Re: [GENERAL-BG] Re: problem s unlink
[email protected] (Ognyan Bankov) Fri, 06 May 2005 11:41:19 +0300
| Newsgroups | php.general.bg |
|---|---|
| Message-ID | <[email protected]> |
Anastas Tarpanov wrote: > В отговор на Kouber Saparev <[email protected]>: > > >>>>Нали си сложил error_reporting на E_ALL и display_errors на On? >>> >>>Абсолютно е така. Точно това е пародокса. Не връща никаква грешка. Ако го >> >>сложа >> >>>unlink в един if влиза вътре нали си връща true ама дефакто файла не се >> >>изтрива. >> >>>Не знам unlink кога се изпълнява. Когато интерпретора мине през него или >> >>накрая >> >>>на скрипта, ако завърши нормално. Тука може би Андрей трябва да даде едно >>>експертно мнение. >> >>Функцията се извиква по време на изпълнение. >> >>Прегледах CVS-а за и по-точно file.c, но не виждам някакви промени по >>unlink функцията, освен една от преди 2 години. Пробвай да минеш на >>4.3.11. Опитай също да му подадеш директно низа в единични кавички, т.е. >>да изолираш колкото се може повече случая. Нещо такова: >> >><? >>var_dump(ini_get('display_errors')); >>var_dump(ini_get('error_reporting')); >> >>$filename = '/path/to/file'; >> >>if (file_exists($filename)) { >> var_dump(stat($filename)); >> var_dump(unlink($filename)); >> clearstatcache(); >> var_dump(stat($filename)); >> var_dump(file_exists($filename)); >>} >>else { >> echo 'File not found.'; >>} >>?> > > > който иска да дебъгва > > string(1) "1" > string(4) "2047" > array(26) { > [0]=> > int(64768) > [1]=> > int(4276) > [2]=> > int(33279) > [3]=> > int(1) > [4]=> > int(33) > [5]=> > int(33) > [6]=> > int(-1) > [7]=> > int(2361) > [8]=> > int(1115305110) > [9]=> > int(1115284902) > [10]=> > int(1115284902) > [11]=> > int(-1) > [12]=> > int(-1) > ["dev"]=> > int(64768) > ["ino"]=> > int(4276) > ["mode"]=> > int(33279) > ["nlink"]=> > int(1) > ["uid"]=> > int(33) > ["gid"]=> > int(33) > ["rdev"]=> > int(-1) > ["size"]=> > int(2361) > ["atime"]=> > int(1115305110) > ["mtime"]=> > int(1115284902) > ["ctime"]=> > int(1115284902) > ["blksize"]=> > int(-1) > ["blocks"]=> > int(-1) > } > bool(true) > <br /> > <b>Warning</b>: stat(): Stat failed for /var/www/mobile/data/langs.conf.php > (errno=2 - No such file or directory) in > <b>/var/www/mobile/admin/editlanguage.php</b> on line <b>65</b><br /> > bool(false) > bool(false) > > Всичко е ок но файла продължава да си е там просто датата на модификация е текущата. > Вече взеха да ме ме гонят някви паранои че се изтрива и след това се създава сам > все едно възкръсва. > > Ако знам вече какво става по едно време триеше само ако принтнех името на файла > който ще се трие защото иначе файла няма никакъв печат прави нещо и се > редиректва след това. > Много странно стана това. мда, прекалено странно е не е лоша идея да пробваш същото с файл в /tmp за да изолираш всякакви допълнителни шитове от пътя... btw, случайно /var/www да е отделен mount-нат дял?