我正在尝试安装rar包。我查看了php.net的安装文档,它只是说要执行 pecl -v install rar
我做了,并重新启动了服务器,但它仍然没有工作。我对Linux的东西不是很熟悉,也许我做错了什么?
Phpinfo也没有显示任何关于RAR包的信息。
我试着执行这个脚本,我在php.net文档上找到的,所以它应该可以工作。
$rar_arch = RarArchive::open('dl/test.rar');
if ($rar_arch === FALSE)
die("Could not open RAR archive.");
$rar_entries = $rar_arch->getEntries();
if ($rar_entries === FALSE)
die("Could retrieve entries.");
echo "Found " . count($rar_entries) . " entries.\n";
foreach ($rar_entries as $e) {
echo $e;
echo "\n";
}
$rar_arch->close();
回答这个4年前的问题,只是因为我有同样的问题,而且我对PHPApachePecl协议栈相当陌生。
基本上,我按照以下步骤操作 指南. 然而,我安装了2个版本的PHP,不得不做一些调整以使其工作(同时,更新说明到2018年的PHP版本如何工作)。
sudo apt-get install php5.6-dev
pecl -v install rar
RAR扩展被安装在 /usr/lib/php/20131226
检查了我的扩展目录在哪里。
php -i | grep extension
extension_dir => /usr/lib/php/20160303 => /usr/lib/php/20160303
添加了一行 /etc/php/5.6/apache2/php.ini
extension=/usr/lib/php/20131226/rar.so
然后,像往常一样重启apache服务器,一切正常!
sudo service apache2 restart