我正在研究Linux Mint。我为Laravel和Oracle 11g Express版安装了Apache,MySQL,PHP。然后将Laravel连接到Oracle,我找到了this on GitHub。
我根据那里的文件做了一切。然后我跑php artisan migrate
时返回我
[Symfony\Component\Debug\Exception\FatalErrorException]
Call to undefined function Yajra\Pdo\oci_connect()
之后我搜索了但未能得到任何对我有用的东西。在Stackoverflow上有两个问题同样的问题还没有回答。从GitHub问题选项卡,有人告诉在php.ini文件中激活评论。但是我的php.ini文件中没有这样的东西。
答案 0 :(得分:2)
听起来你没有安装oci8
分机。您需要获取Oracle Instant Client基本和sdk zip包,将它们解压缩到同一目录,创建符号链接
sudo ln -s libclntsh.so.* libclntsh.so
sudo ln -s libocci.so.* libocci.so
然后执行pecl install oci8
,并为其提供已解压缩即时客户端的目录路径。它会在您的计算机上编译OCI8扩展。正确编译时,在php.ini中启用扩展名:
echo "; configuration for php oci8 module" | sudo tee /etc/php5/conf.d/oci8.ini
echo extension=oci8.so | sudo tee -a /etc/php5/conf.d/oci8.ini
并重启apache。另请参阅this answer,official oracle manual,official php manual或google" linux oci8 pecl howto"多个详细手册。