Ejecutar scripts php a través del modo de línea de comandos da advertencias

1

Cada vez que ejecuto mi script de línea de comando php, antes de que el script realmente salga a la pantalla, php siempre devuelve un montón de mensajes de error de la siguiente manera:

PHP Warning:  PHP Startup: Unable to load dynamic library '/opt/local/lib/php/extensions/no-debug-non-zts-20060613/gd.so' - (null) in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/opt/local/lib/php/extensions/no-debug-non-zts-20060613/mbstring.so' - (null) in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/opt/local/lib/php/extensions/no-debug-non-zts-20060613/mcrypt.so' - (null) in Unknown on line 0
PHP Warning:  Module 'memcache' already loaded in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/opt/local/lib/php/extensions/no-debug-non-zts-20060613/mysql.so' - (null) in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/opt/local/lib/php/extensions/no-debug-non-zts-20060613/mysqli.so' - (null) in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/opt/local/lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so' - (null) in Unknown on line 0
PHP Warning:  Module 'syck' already loaded in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/opt/local/lib/php/extensions/no-debug-non-zts-20060613/zip.so' - (null) in Unknown on line 0
PHP Warning:  Module 'xdebug' already loaded in Unknown on line 0

Sin embargo, las advertencias realmente no parecen detener la ejecución correcta de mis scripts (aunque dice que ciertas bibliotecas no se pueden cargar, pero aún puedo usarlas en mis scripts). Actualmente estoy ejecutando php5.2 instalado a través de macports para Leopard 10.5.7

hidetoshi:bin jeffrey04$ port installed php5
The following ports are currently installed:
  php5 @5.2.9_0+apache2+macosx+mysql5+pear+postgresql83
  php5 @5.2.9_2+apache2+macosx+mysql5+pear+postgresql83 (active)
  php5 @5.3.0_1+apache2+macosx+mysql5+pear+postgresql83
  php5 @5.3.0_2+apache2+macosx+mysql5+pear+postgresql83

y cambio a php5.2 a través de este simple script de shell

port deactivate php5 @5.3.0_2+apache2+macosx+mysql5+pear+postgresql83
port activate php5 @5.2.9_2+apache2+macosx+mysql5+pear+postgresql83

port deactivate php5-syck @0.55_2
port activate php5-syck @0.55_1

port deactivate php5-memcache @2.2.5_1
port activate php5-memcache @2.2.5_0

port deactivate php5-xdebug @2.0.5_0
port activate php5-xdebug @2.0.4_0

/opt/local/apache2/bin/apachectl restart

¿Estoy haciendo algo mal? ¿Hay alguna forma de eliminar las advertencias devueltas durante la inicialización de php?

Jeffrey04
fuente
¿Están esas bibliotecas donde se espera que estén?
aleatorio

Respuestas:

1

He visto una pregunta similar en alguna parte; se recomendó hacer primero todas las desactivaciones, luego todas las activaciones, en caso de que algunos módulos dependan de otros. Entonces cambie su guión a:

port deactivate php5 @5.3.0_2+apache2+macosx+mysql5+pear+postgresql83
port deactivate php5-syck @0.55_2
port deactivate php5-memcache @2.2.5_1
port deactivate php5-xdebug @2.0.5_0

port activate php5 @5.2.9_2+apache2+macosx+mysql5+pear+postgresql83
port activate php5-syck @0.55_1
port activate php5-memcache @2.2.5_0
port activate php5-xdebug @2.0.4_0

/opt/local/apache2/bin/apachectl restart
quijote curandero
fuente
0

es posible que desee comprobar qué archivo php.ini se utiliza, ya que en algunos sistemas basados ​​en Unix php tiene archivos php.ini separados para las interfaces mod_php y cli.

si ese es el caso, debe verificar la configuración en el archivo cli php.ini.

Eimantas
fuente
0

Otro pensamiento: desactivar todas las extensiones php para desactivar php, activar php y luego activar las extensiones.

Por si acaso hay otras dependencias

marca
fuente