![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Oyy |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 15.7.2008 Репутация: нет Всего: нет |
Возникла такая проблема. Есть CMS, ее нужно доработать. Как узнать в каких файлах находятся функции которые выполняют вычисления? Т.е. последовательность запросов к php интерпретатору что ли. Вроде понятно описал. Файлов много, поэтому echo или print проблему не решает.
P.S. Прошу прощения если подобная тема на форуме поднималась. Даже не знаю в каком направлении копать Спасибо! |
|||
|
||||
| Simpliest |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
|
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
какие именно вычисления? то есть, надо найти все файлы с PHP-кодом? тогда ищи файлы с текстом "<?" - это необходимые(но не достаточный) признак наличия PHP-кода в текстовом файле. вот только я думаю, что таких |
|||
|
||||
| Oyy |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 15.7.2008 Репутация: нет Всего: нет |
Напишу немножко по-другому
Есть функция которая что-то рассчитывает. Мне нужно ее модифицировать. Я понятия не имею где она находится, могу заставить ее сработать но как она называется и тем более где она зарыта непонятно. Как это выяснить? |
|||
|
||||
| Simpliest |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
Действительность оказалась еще жестче :(
Вариантов масса. 1. Пользоваться IDE (например Eclipse PDT). Тогда в проекте двойным кликом по функции ты перейдешь к ее определению 2. Пользоваться файлменеджерами типа Far и искать файлы на наличие подстроки function function_name() 3. Пользоваться утилитой find для тех же целей что и п.2. |
|||
|
||||
| NLspieler |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 619 Регистрация: 13.10.2008 Где: Берлин Репутация: 16 Всего: 19 |
В таком случаи придется написать небольшой скриптик, который будет выполнять поставленную цель.
1. Смотришь, как объявляются функции, обычно так: function func_name ($param, $param2) Формируешь строку:
2. Получаешь список всех файлов с php кодом. И помещаешь их адреса в массив. 3. Циклом перебираешь весь этот массив. Загружаешь каждый файл в переменную
После чего проверяешь на присутствии объявления функции,
Если функция возвращает значение, отличное от FALSE, завершаешь цикл и распечатываешь на экран адрес соответсвующего файла. |
||||||
|
|||||||
| Oyy |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 15.7.2008 Репутация: нет Всего: нет |
Спасибо за ответы но немного не то
Есть куча чужого кода. Я понятия не имею какие действия CMSки какая функция обрабатывает. Нужно найти именно название этих функций. Попробую на примере. 1. Есть платный сервис по размещению объявлений на сайте. 2. Стандартно задается абонплата за пользование сервисом. нипример 1 месяц. 3.Нужно добавить максимальное количество объявлений которое может добавить пользователь не больше 5 например. Т.е. нужно найти какие функции вызываются при добавлении объявления, ну и их параметры и последовательность. Найти саму функцию по поиску не проблема. Проблема состоит в том как узнать какую функцию искать? |
|||
|
||||
| Simpliest |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
Идем в google и ищем
xdebug zend debugger рекомендую Eclipse PDT как бесплатный IDE с отладчиком. Загружаем в него проект, и в режиме дебага начинаем пользоваться сайтом. По шагам и смотрим, где? что? когда? вызывается. Добавлено через 58 секунд P.S. Как вы, правда, собираетесь дорабатывать код не зная о том что такое debug для меня полная загадка. |
|||
|
||||
| Oyy |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 15.7.2008 Репутация: нет Всего: нет |
Да там не много. Раньше пользовался выводами в файл или принтами. Просто хочется быстрее делать подобное.
Спасибо за подсказку |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |