PHP CLI: вызов неопределенной функции mysql_connect() даже с включенным модулем mysql

Я пытаюсь запустить скрипт PHP из командной строки, но получаю следующую ошибку:

Call to undefined function mysql_connect()

Тем не менее mysql модуль загружен:

root /var/www/scripts # php -m | grep mysql
mysql
mysqli
pdo_mysql

Я нахожусь на машине Debian, поэтому все модули загружаются в свой собственный файл.ini:

root /var/www/scripts # php --ini
Configuration File (php.ini) Path: /etc/php5/cli
Loaded Configuration File:         /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed:      /etc/php5/cli/conf.d/10-pdo.ini,
/etc/php5/cli/conf.d/20-apc.ini,
/etc/php5/cli/conf.d/20-gd.ini,
/etc/php5/cli/conf.d/20-mcrypt.ini,
/etc/php5/cli/conf.d/20-mysql.ini,
/etc/php5/cli/conf.d/20-mysqli.ini,
/etc/php5/cli/conf.d/20-pdo_mysql.ini,
/etc/php5/cli/conf.d/20-xmlrpc.ini

Так что, хотя mysql модуль был загружен, я все еще получаю сообщение об ошибке при попытке вызвать mysql_connect() в сценарии PHP.

Есть идеи?

PS: Запуск скрипта через Apache работает нормально.

1 ответ

Решение

Решение этой проблемы кажется простым и странным (?):

php -c /etc/php5/cli/php.ini -nf script.php

Почему я должен указать php.ini файл в командной строке снова, если интерпретатор говорит, что он загружает этот файл ini в любом случае, даже если он не указан явно?

Другие вопросы по тегам