Mailinglisten-Archive |
> 1,2,'test',3,'richtig' => true > 1,2,'test',3,falsch => false > 1,2.1,'test',3,'richtig' => false > 1,2,'test',3,'richtig' => true > 1,2 , 'test',3, 'richtig' => true > 1,2,'test',3,'richtig' => true > 1,2,12'test',3,'richtig' => false > ... bis hierhin immer eine exeption werfen! > 1,2,'test',3,'richtig fettes essen' => true > 1,2,'test',3,'richtig 'fettes' essen' => false > 1,2,'test',3,'richtig \'fettes\' essen' => true > 1,2,'test',3,'$richtig = true; echo $richtig;' => true > 1,2,'test',3,'$richtig = \'fettes essen\'' => true > 1,2,'test',3,'$richtig = \'"fettes" essen\'' => true > 1,2,'test',3,'$richtig->essen(\'fettarmes\', \'essen\', true)' => true Moin. Ich weiß nicht, ob ich das jetzt alles richtig verstanden habe, aber ich hab folgendes gemacht und es funktionierte mit den Versionen hier oben: $csv = "1,2,'test',3,'\$richtig->essen('fettarmes', 'essen', true)'"; $regex = "/ ^ (\d{1,3}) , (\d{1,3}) , ('[\w\s]+') , (\d{1,3}), '(.*)' $ /ix"; /* Das funktioniert natürlich nur, wenn man wirklich davon ausgehen kann, dass das letzte Zeichen im String ' ist. */ preg_match($regex,$csv,$result); $result[5] = addslashes($result[5]); $result[5] = "'" . $result[5] . "'"; array_splice($result, 0, 1); $result = implode (',', $result); echo $result; ---- VG Marcus Strube
php::bar PHP Wiki - Listenarchive