Вызов функции undefined function filter_var()

После переноса моего сайта на другой хостинг я получил эту ошибку:

    Fatal error: Call to undefined function filter_var() in
 /home/ultrastep/ultrastep.ru/docs/sites/all/modules/q_cart/q_cart.module on line 410

Версия PHP на сервере - 5.2.10.

Любые идеи в чем-то не так?

Ответ 1

У вас должен быть установлен php-модуль "Фильтр"

Ответ 2

В случае, если кто-то еще наткнется на это, как я, вот решение, которое я нашел для Redhat/CentOS:

http://www.cyberciti.biz/faq/rhel-cento-linux-install-php-pecl-filter/

Установить php-devel Вам нужно установить php-devel для компиляции расширений php:

yum install php-devel

Загрузка исходного кода php Заголовочный файл php_pcre.h не входит в исходный код php 5.1.6, поэтому вам также потребуется исходный код php. Посетите php.net, чтобы получить последнюю версию и сохранить ее в каталоге /opt. Используйте рысь и элинки:

cd/opt

elinks http://www.php.net/get/php-5.2.6.tar.bz2/from/a/mirror

Сохраните исходный код php в код на диск. Затем извлеките исходный код:

tar -jxvf php-5.2.6.tar.bz2

Скачать расширение фильтра Посетите расширение pecl, чтобы получить последний исходный код фильтра:

cd/opt wget http://pecl.php.net/get/filter-0.11.0.tgz

Установить расширение фильтра Unrar файл:

tar -jxvf filter-0.11.0.tgz

cd filter-0.11.0

Откройте файл logic_filters.c:

vi logical_filters.c

Найдите строку, которая выглядит следующим образом:

include "ext/pcre/php_pcre.h"

Измените на (требуется абсолютный путь к php_pcre.h):

include "/opt/php-5.2.6/ext/pcre/php_pcre.h"

Сохраните и закройте файл. Наконец, введите следующие команды для компиляции расширения:

phpize

./configure

make install

Настройте расширение фильтра. Введите следующую команду:

echo 'extension=filter.so' >/etc/php.d/filter.ini

Перезапустите httpd:

service httpd restart