[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Получение списка функций в php
Sirius Rain
Здравствуйте, появилась необходимость сделать скрипт который получал бы список всех файлов и каталогов на сервере-> получал список всех php скриптов имеющихся там -> и получал список имеющихся в этих скриптах функций , подскажите это вообще возможно? И если возможно то как? Заранее спасибо.



Спустя 6 минут, 8 секунд (1.04.2012 - 21:42) Nikitian написал(а):
Функция glob() для проххода по файловой сстеме и получения списка файлов-каталогов. preg_match_all() для парсинга и получения списка используемых функций.

Спустя 19 минут, 59 секунд (1.04.2012 - 22:02) Sirius Rain написал(а):
большое спасибо , буду пробовать

Спустя 11 минут, 27 секунд (1.04.2012 - 22:13) Sirius Rain написал(а):
функция glob() ищет файлы по маске а как сделать так чтобы и каталоги тоже были видны?

Спустя 2 минуты, 58 секунд (1.04.2012 - 22:16) Nikitian написал(а):
Цитата
Возвращает массив, который содержит совпадающие файлы/директории, пустой массив в случае отсутствия совпадения или FALSE в случае ошибки.

Спустя 12 минут, 56 секунд (1.04.2012 - 22:29) killer8080 написал(а):
Sirius Rain
без рекурсии не обойтись smile.gif



Спустя 1 час, 2 минуты, 11 секунд killer8080 написал(а):
Получить все все файлы .php можно так
function read_dir($dir){ 
$dir = rtrim($dir, '/');
if($handle = opendir($dir)){
$dir_list = array();
while(false !== ($file = readdir($handle))){
if($file != "." && $file != ".."){
$file = $dir.'/'.$file;
if(is_file($file) && preg_match('#.*\.php$#i', $file))
$dir_list []= $file;
elseif(is_dir($file))
$dir_list = array_merge ($dir_list, read_dir($file));
}
}

closedir($handle);
return $dir_list;
}
return false;
}

echo '<pre>'.print_r(read_dir($_SERVER['DOCUMENT_ROOT']), 1).'</pre>';

Спустя 1 день, 23 часа, 42 минуты, 27 секунд (3.04.2012 - 22:12) Sirius Rain написал(а):
почему ? ведь вариант Nikitian работает, зачем так усложнять ?

Спустя 1 час, 23 минуты, 50 секунд (3.04.2012 - 23:36) killer8080 написал(а):
Цитата (Sirius Rain @ 3.04.2012 - 22:12)
почему ? ведь вариант Nikitian работает, зачем так усложнять ?

Так тебе нужно получить все .php файлы проекта, или только из текущей директории?

Спустя 13 минут, 16 секунд (3.04.2012 - 23:49) Sirius Rain написал(а):
так функция glob() ищет все директории и файлы и у меня это работает, там все очень просто

Спустя 56 секунд (3.04.2012 - 23:50) Sirius Rain написал(а):
теперь меня мучает другой вопрос , как использовать функции php в слепую?

Спустя 7 минут, 36 секунд (3.04.2012 - 23:57) killer8080 написал(а):
Цитата (Sirius Rain @ 3.04.2012 - 23:49)
так функция glob() ищет все директории и файлы и у меня это работает, там все очень просто

glob не обходит рекурсивно поддиректории wink.gif
Цитата (Sirius Rain @ 3.04.2012 - 23:50)
теперь меня мучает другой вопрос , как использовать функции php в слепую?

Не понял вопрос.

Спустя 6 минут, 16 секунд (4.04.2012 - 00:04) Sirius Rain написал(а):
ну смотри, вот есть несколько каталогов на сервере в которые с небольшой периодичностью добавляются php скрипты как получить их имена и их функции я понял , а как их использовать , т.е заставить функцию чтото делать

Спустя 7 минут, 40 секунд (4.04.2012 - 00:11) killer8080 написал(а):
Цитата (Sirius Rain @ 4.04.2012 - 00:04)
а как их использовать , т.е заставить функцию чтото делать

А зачем? blink.gif

Спустя 4 часа, 1 минута, 56 секунд (4.04.2012 - 04:13) Stasonix написал(а):
по моему он имеет в виду ООП, просто пошел не той дорогой?

Спустя 4 часа, 47 минут, 26 секунд (4.04.2012 - 09:01) Nikitian написал(а):
Цитата (Sirius Rain @ 4.04.2012 - 00:04)
ну смотри, вот есть несколько каталогов на сервере в которые с небольшой периодичностью добавляются php скрипты как получить их имена и их функции я понял , а как их использовать , т.е заставить функцию чтото делать

Спустя 2 дня, 2 часа, 14 минут, 50 секунд (6.04.2012 - 11:16) Sirius Rain написал(а):
Цитата
А зачем? 

для учебы , надо практическую сделать, но в задании не указано как делать((
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.