Объединенный Открытый Проект - Сайт для Настоящих Компьютерщиков

Объединенный Открытый Проект

Сайт для Настоящих Компьютерщиков

; Логин:
  Пароль:
Обычный
Безопасный
Запомнить пользователя



Зарегистрироваться
Забыли пароль?
 
 
 
Объединенный Открытый Проект »   Программирование »   PHP »   Узнать, где определена функция
RSS

Узнать, где определена функция

Текущий рейтинг темы: Нет

<<Назад  Вперед>>Модератор: wsxПечать
 
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик

Откуда: Москва
Всего сообщений: 2994
Рейтинг пользователя: 79





Дата регистрации на форуме:
29 сен. 2001
Существуют ли способы узнать, является ли функция, имя которой нам известно и хранится в некоторой переменной, встроенной функцией PHP (или подключенной в виде бинарного модуля) или же функцией, которая задана пользователем?

---
Каждый человек всегда может найти, чем он может быть полезен окружающим. Проблема только в одном: слишком многие не хотят это искать.
wsx
Модератор раздела
Юниксойд, сетевик
wsx
Откуда: Казань
Всего сообщений: 1074
Рейтинг пользователя: 28

Репутация пользователя: 1




Дата регистрации на форуме:
14 янв. 2005
Хм...Лично не работал с этими функциями, но по ману знаю вот такие:
get_defined_functions - выводит список задефайненных функций. Может быть ещё и их отличие выводит(встроенная или самописная), думаю стоит посмотреть ман.

function_exists(параметр) - Проверяет есть ли функция вобще.


Более точно сказать не могу. А для чего это может понадобится?
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик

Откуда: Москва
Всего сообщений: 2994
Рейтинг пользователя: 79





Дата регистрации на форуме:
29 сен. 2001
Для повышения безопасности. У меня ведь и в IntB и в XPDK имя функции передается как параметр запроса. Соответственно, сделав такую проверку, я бы запретил вызывать стандартные функции (хотя через стандартные функции без параметров мало что можно сделать, но все же может окзааться, что как-то можно), а разрешил бы только пользовательские.

---
Каждый человек всегда может найти, чем он может быть полезен окружающим. Проблема только в одном: слишком многие не хотят это искать.
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик

Откуда: Москва
Всего сообщений: 2994
Рейтинг пользователя: 79





Дата регистрации на форуме:
29 сен. 2001
Вообще, решение я нашел, но жутко кривое:
функция get_defined_functions() возвращает массив, который содержит два подмассива: user и internal, соответственно, надо проводить поиск в подмассиве user.

---
Каждый человек всегда может найти, чем он может быть полезен окружающим. Проблема только в одном: слишком многие не хотят это искать.
<<Назад  Вперед>>Модератор: wsxПечать
Объединенный Открытый Проект »   Программирование »   PHP »   Узнать, где определена функция
RSS
Быстрый переход в раздел:


Время выполнения скрипта: 0.0243. Количество выполненных запросов: 18, время выполнения запросов 0.0126