Some supermarkets are rationing the amount of iceberg lettuce and broccoli customers can buy - blaming poor growing conditions in southern Europe for a shortage in UK stores.
Tesco is limiting shoppers to three iceberg lettuces, as bad weather in Spain caused "availability issues".
Morrisons has a limit of two icebergs to stop "bulk buying", and is limiting broccoli to three heads per visit.
Prices have also risen, with Lidl's iceberg lettuce up to £1.19 from 42p.
But both Aldi and Lidl have told the BBC their stock levels have not been affected.
Asda said courgette stocks were still low after a UK shortage last month.
Customers have posted photographs on social media sites of empty lettuce shelves in Tesco stores, alongside signs asking them to limit lettuce purchases.
One notice read: "Due to continued weather problems in Spain there is a shortage of iceberg lettuce.
"To protect the availability to all our customers, we are limiting bulk purchases to three per person. We apologise for any inconvenience caused."
A spokesman for the Prime Minister, Theresa May, said the government knew there was a "situation", and that the Department for Environment, Food and Rural Affairs (Defra) was "monitoring" it.