$start_date = date('Y-m-d', strtotime(str_replace('/', '-', $query->row('startdate'))));
Eller endnu bedre - bare skift dataene i databasen:
UPDATE `table` SET `startdate` = REPLACE(`startdate`, '/', '-');
... og konverter derefter feltet til at skrive DATE.
---- REDIGER ----
Egentlig har oberst Shrapnel en pointe... Jeg havde overset det faktum, at datoen også skal vendes, så det er ÅÅÅÅ-MM-DD; forudsat at den oprindelige dato er i formatet DD/MM/ÅÅÅÅ kan en bedre forespørgsel være noget som:
UPDATE `table` SET `date` = CONCAT(SUBSTRING(`date`, 7), '-', SUBSTRING(`date`, 4, 2), '-', SUBSTRING(`date`, 1, 2))
Hvilket vil vende komponentdelene til en streng, der kan konverteres til en DATO ... det vil ikke helt fungere, hvis den originale datostreng ikke bruger indledende nuller 1/6/2011
for eksempel... ville være nødt til at gøre noget lidt smartere i så fald.