Все сервисы Хабра
Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Закрыть
Задать вопрос
i_want_to_know_everything
@i_want_to_know_everything
PHP
Регулярные выражения
Как из файла вытащить код функции?
как из файла library.php вытащить в строку исходный код и описание функции foo() сохранив форматирование.
Вопрос задан
более трёх лет назад
318 просмотров
Комментировать
Подписаться
1
Оценить
Комментировать
Facebook
Вконтакте
Twitter
Решения вопроса
1
DevMan
@DevMan
бредовая затея - для этого есть tokenizer/reflection.
но если очень хочется, то
SO
в помощь.
Ответ написан
более трёх лет назад
7
комментариев
Нравится
3
7
комментариев
Facebook
Вконтакте
Twitter
i_want_to_know_everything
@i_want_to_know_everything
Автор вопроса
c вытащить функцию разобрался
require_once 'config.php';
$func = new ReflectionFunction('foo');
$filename = $func->getFileName();
$start_line = $func->getStartLine() - 1;
$end_line = $func->getEndLine();
$length = $end_line - $start_line;
$source = file($filename);
$body = implode("", array_slice($source, $start_line, $length));
echo '';
echo htmlspecialchars($body);
echo '';
Осталось понять как достать описание
Написано
более трёх лет назад
i_want_to_know_everything
@i_want_to_know_everything
Автор вопроса
DevMan
: а затея нужная, раз в три дня файл библиотека меняется, надо печатать на экран свежие функции, а документатор из за одного файла разворачивать имхо лишнее
Написано
более трёх лет назад
DevMan
@DevMan
i_want_to_know_everything
: затея - норм. использование для нее регэкспов - не норм.
для этого как раз созданы токенайзер и рефлексия.
Написано
более трёх лет назад
i_want_to_know_everything
@i_want_to_know_everything
Автор вопроса
DevMan
: ну это то я понял, вот только не могу найти метод в ReflectionFunction который описание функции тащщит
Написано
более трёх лет назад
DevMan
@DevMan
i_want_to_know_everything
: a в чем сложность?
ideone.com/FXagyq
Написано
более трёх лет назад
i_want_to_know_everything
@i_want_to_know_everything
Автор вопроса
DevMan
: Вот сейчас вижу что нет ничего сложного)) не увидел я этого метода, я PHP 1.5 месяца как начал, так что прошу прощения за глупые вопросы
Написано
более трёх лет назад
DevMan
@DevMan
i_want_to_know_everything
: бывает))
метод getDocComment() описан не в ReflectionFunction, а в его родителе ReflectionFunctionAbstract
успехов!
Написано
более трёх лет назад
Пригласить эксперта
Ответы на вопрос
0
Ваш ответ на вопрос
Войдите, чтобы написать ответ
Войти через центр авторизации
Похожие вопросы
PHP
Простой
Лишние переводы строк в ответе сервера (echo)?
1 подписчик
вчера
111 просмотров
1
ответ
PHP
+1 ещё
Простой
Как получить id добавленной записи PHP PDO PGSQL?
1 подписчик
01 июл.
163 просмотра
1
ответ
PHP
+1 ещё
Средний
Как получить статус доставки сообщения firebase cloud messaging?
1 подписчик
30 июн.
84 просмотра
1
ответ
PHP
+1 ещё
Средний
Почему на двух доменах один сайт грузится с разной скоростью?
1 подписчик
29 июн.
248 просмотров
1
ответ
PHP
+1 ещё
Простой
API bot TG — Как мне узнать, на какой вопрос ответили?
1 подписчик
29 июн.
166 просмотров
4
ответа
PHP
+1 ещё
Средний
Почему при отправке push-уведомления service-worker выходит ошибка 404?
1 подписчик
27 июн.
98 просмотров
0
ответов
PHP
+2 ещё
Простой
Почему некорректно форматируются PHP с HTML, когда открывающие/закрывающие теги в условиях?
1 подписчик
19 июн.
490 просмотров
3
ответа
PHP
Простой
Могу ли я прогнать через password_hash пароли в бд, которые md5, чтобы не сломалась авторизация?
1 подписчик
19 июн.
360 просмотров
4
ответа
PHP
+1 ещё
Простой
Как установить php 8.4 на MacOS Sequoya?
1 подписчик
17 июн.
223 просмотра
1
ответ
PHP
+1 ещё
Простой
Можно ли настроить запросы к php через вебсокет и http одновременно?
2 подписчика
13 июн.
1910 просмотров
3
ответа
Показать ещё
Загружается…
Вакансии с Хабр Карьеры
PHP-developer / PHP-разработчик
Wanted
До 250 000 ₽
Senior PHP Developer (Yii2)
Americor
•
Москва
от 4 000 $
PHP-разработчик
Wanted
До 300 000 ₽
Минуточку внимания
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации
Закрыть
Реклама