2009-06-04 59 views
1

我想要使用mcrypt_decrypt从commond线,但我为得到folllowing错误: -PHP命令行

Call to undefined function mcrypt_decrypt() in Command line code on line 1 

任何想法?和任何其他的替代解决方案,因为即时通讯使用从erlang的os:cmd()实现this.since erlang确实有这个功能,但即时通讯无法找出什么worng在那so.so想这样做,以便我验证的东西。

感谢名单中晚期

+0

发布脚本和用于执行的shell命令可能有助于获得更好的答案:) – 2009-06-04 13:25:24

回答

3

这意味着mcrypt扩展没有被加载 - 确保你加载命令行权的php.ini。

+0

ubuntu将php模块分离为二进制包,并且每个包配置文件都位于隔离的.ini文件中,所以只需将适合的加载器添加到php.ini中即可帮助,他显然错过了整个模块=) – rasjani 2009-06-04 18:27:56

0

对Greg所说的话进一步说,通过删除“;”来取消注释正确的一行。在mcrypt.dll

前(我认为这是mcrypt.dll)

2

而且会进一步升技,这可能是它甚至没有编译,以便在php.ini中的犯规帮助实现它。以及如何确定取决于你运行php-cli的操作系统。

增加:

楼主表示,他在Ubuntu上运行。那么,如何使其工作:

sudo apt-get install php5-mcrypt 

和注释,还有在LINUX“的.dll”文件,DLL是指‘dynamicaly装库’,它用在Windows,Linux的相当于是“所以”和我敢肯定,你还没有安装mcrypt软件包。

+0

我假设他是windows。大多数(afaik)windows安装都会加载通用扩展 - 包括mcrypt。他们只是没有启用php.ini – JasonV 2009-06-04 16:01:01

0

尝试在命令行中指定php二进制文件的完整路径。例如:

/Applications/XAMPP/xamppfiles/bin/php someprogram.php 

它适用于我。