Eu tenho dois arquivos php.ini
-
-
/etc/php.ini
que carrega no caso de cli
-
/opt/lampp/etc/php.ini
, que é carregado no navegador.
Eu posso usar a extensão Mailparse do PHP depois de adicionar a linha extension=mailparse.so
no /opt/lampp/etc/php.ini
e reiniciando o lampp.
Mas não consigo carregar o mesmo em caso de linha de comando -
recebendo PHP Fatal error: Call to undefined function mailparse_msg_create() in ...
mailparse_msg_create () é uma parte da extensão Mailparse
.
Eu tentei relogar com o usuário depois de fazer a alteração e até mesmo reiniciar o sistema.
O que precisa ser feito para que a mudança entre em vigor.
Atualizar
Eu verifiquei que php -i | grep 'Configuration File'
dá
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/mailparse.so' - /usr/lib/php/modules/mailparse.so: cannot open shared object file: No such file or directory in Unknown on line 0
Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini
Atualização 2
Eu copiei o mailparse.so de /opt/lampp/lib/php/extensions/no-debug-non-zts-20090626
e coloquei em /usr/lib/php/modules
. Também adicionei extension=mailparse.so
a /etc/php.ini
. Mas ainda mostrou esse aviso
PHP Warning: PHP Startup: Unable to load dynamic library ...
Como contado por Lekensteyn, eu fiz
ldd /usr/lib/php/modules/mailparse.so
e obtivemos
ldd: warning: you do not have execution permission for /usr/lib/php/modules/mailparse.so'
Então eu dei permissão de execução. Então
ldd /usr/lib/php/modules/mailparse.so
mostrou
linux-gate.so.1 => (0x00110000) libc.so.6 => /lib/libc.so.6 (0x0011d000) /lib/ld-linux.so.2 (0x003aa000)
que parece normal. Agora, executando o comando php
diz
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/mailparse.so' - /usr/lib/php/modules/mailparse.so: undefined symbol: mbfl_name2no_encoding in Unknown on line 0