Ben bizim PHP kodu bugün bazı çok garip bir davranış içine koştu. Biz dosyaları ile başa çıkmak için bir sınıf var. Böyle bir şey var:
class AFile {
//usual constructor, set and get functions, etc.
//...
public function save() {
//do some validation
//...
if($this->upload()) { //save the file to disk
$this->update_db(); //never reached this line
}
}
private function upload() {
//save the file to disk
//...
return ($success) ? true : false;
}
}
Bu bizim için oldukça normal görünüyordu, ama $ this-> yükleyin () fonksiyonu NULL şey ama asla geri dönmedi. Biz doğru fonksiyon çalışan olduğunu kontrol etti. Iade önce biz onun dönüş değerini yankılandı. Biz sadece gerçek bir değer ya da bir dize döndüren çalıştı. Her hakkı kontrol ediyordu. Ama $ this-> yükleme hala NULL değerlendirildi. Ayrıca, orada günlüklerinde bir şey oldu ve ERROR_ALL üzerinde.
Küskünlükle biz foo_upload için işlev adını değiştirdi. Birdenbire her şeyi tüm çalıştı. "Upload" PHP reserved words listesinde değildir. "Upload" adında bir sınıf işlevi başarısız neden kimse herhangi bir düşünce var mı?