filetypes problem [under windows]
6 отговора
169 прегледа
filetypes problem [under windows]
имам функция write_dir, която трябва да обходи всички файлове в директорията $users и да принтира тези, които да директория. когато я тествам под сървър apache на windows (инсталиран PHPTriad) ми изкарва ВСИЧКИ файлове от директорията, независимо дали са директория или не.
пробвах да "филтрирам" с различни иф-условия и се оказа, че в момента функцията is_dir() ми връща true само за директориите "." и "..", !is_file() ми връща и файлове, не само директории, а filetype() == dir показва, че всички файлове в директорията са директории (вкл. и тези, които не са!!!).
чудя се дали няма някакви грешни настройки на сървъра или пък е несъвместим с уиндоус и не може да разпознава типове файлове...
please, help!!! :(
ето горе-долу какво представлява функцията:
function write_dir() {
global $users;
$dir = opendir($users);
while ($file=readdir($dir) and filetype($file) == "dir") {
echo("<li>$file and filetype is ".filetype($file));
}
closedir($dir);
}
пробвах да "филтрирам" с различни иф-условия и се оказа, че в момента функцията is_dir() ми връща true само за директориите "." и "..", !is_file() ми връща и файлове, не само директории, а filetype() == dir показва, че всички файлове в директорията са директории (вкл. и тези, които не са!!!).
чудя се дали няма някакви грешни настройки на сървъра или пък е несъвместим с уиндоус и не може да разпознава типове файлове...
please, help!!! :(
ето горе-долу какво представлява функцията:
function write_dir() {
global $users;
$dir = opendir($users);
while ($file=readdir($dir) and filetype($file) == "dir") {
echo("<li>$file and filetype is ".filetype($file));
}
closedir($dir);
}
Re: filetypes problem [under windows]
ако не греша nuPaT имал подобен проблем преди година и нещо, а той е в самата функция и резултат, май го заобиколихме по някакъв начин, но вече не си спомням какъв точно.
-----------------------
гърбавия, ковчег ще го изправи
-----------------------
гърбавия, ковчег ще го изправи
Re: Най-тъпото ...
.. решение дет ми идва в тъпата глава е да сложиш проверка за . и .., и ако нещо ти се прави на дир опитваш да го отвориш като дир и в случай на грешка това може да е симлинк или файл.
май това беше решението в пиратския случай :)
Абе, май това не е само за уиндовз, а?
-----------------------
гърбавия, ковчег ще го изправи
май това беше решението в пиратския случай :)
Абе, май това не е само за уиндовз, а?
-----------------------
гърбавия, ковчег ще го изправи
Re: Най-тъпото ...
и аз за това си мислих
if(@opendir(dir)) или @readdir... нещо такова
if(@opendir(dir)) или @readdir... нещо такова
Re: Най-тъпото ...
ми туй имах увиду
-----------------------
гърбавия, ковчег ще го изправи
-----------------------
гърбавия, ковчег ще го изправи
Re: Най-тъпото ...
мерси много, така стана перфектно...
всъщност, каква е ролята на тоя @ пред функцията???
а, да и докато не съм забравил да ви попитам - има ли някаква библиотека с функции за хтмл-ско интерпретиране тия мета тагове които мога да ти използвам тук примерно за болднат текст и т.н.
всъщност, каква е ролята на тоя @ пред функцията???
а, да и докато не съм забравил да ви попитам - има ли някаква библиотека с функции за хтмл-ско интерпретиране тия мета тагове които мога да ти използвам тук примерно за болднат текст и т.н.
Редактирано от id на
Re: filetypes problem [under windows]
Наистина преди време имах такъв проблем. Реши се по следния начин.
Използвах file_size. ако е равен на -1 значи е директория ако не е файл.
струва ми се малко по лесно.
Break The UnBreakable
Използвах file_size. ако е равен на -1 значи е директория ако не е файл.
струва ми се малко по лесно.
Break The UnBreakable