|
|
|
| Ответ 002 на задачу N 17.
С условиями задачи можно ознакомится по ссылке.
<?php
$dir_win = 'c:\windows';
$dir_lin = '/home';
if ( preg_match("#windows#i", $_ENV['OS']) ) {
$info = 'dir $dir_win /A-D /B /OEN';
$info = trim(iconv("CP866", "WINDOWS-1251", $info));
$result = explode("\n", $info);
echo "Количество файлов в папке $dir_win - ".count($result)."<br/><br/>";
foreach( $result as $v ) {
echo $v."<br/>";
}
} else {
$info = 'ls $dir_lin';
$result = explode(" ", trim($info));
echo "Количество файлов в папке $dir_lin - ".count($result)."<br/><br/>";
foreach( $result as $v ) {
echo $v."<br/>";
}
}
?>
|
P. S.
За linux не ручаюсь, т. к. не было возможности протестировать скрипт в этой ос.
http://www.softtime.ru/info/task.php?id_article=89 | |
|
|
|
|
|
|
|
для: SoftTime
(21.04.2006 в 01:12)
| | Замечу, что в строке
<?php
$info = 'dir $dir_win /A-D /B /OEN';
?>
|
одинарные кавычки следует заменить на обратные - это особенность движка нашего форума. Хм.. у меня почему-то не выводится список файлов. Но идея проверки операционной системы при помощи $_ENV['OS'] - очень хорошая. | |
|
|
|
|
|
|
|
для: cheops
(24.04.2006 в 14:10)
| | Странно, но у меня всё работает. Попробуйте так:
<?php
$info = 'dir $dir_win /A-D /B';
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(24.04.2006 в 14:10)
| | Гм... а у меня сервер вообще такую переменную не отдает ($_ENV['OS'])... или это только под виндами работает? | |
|
|
|