OSはUbuntu 20.04.3で、PHPは既定のPHP7.4.3をインストールしている前提。
### 事前準備 apt install php-dev build-essential libaio1 cd /usr/local/src curl -O https://www.php.net/distributions/php-7.4.3.tar.gz tar xzvf php-7.4.3.tar.gz curl -O https://download.oracle.com/otn_software/linux/instantclient/214000/instantclient-basic-linux.x64-21.4.0.0.0dbru.zip unzip instantclient-basic-linux.x64-21.4.0.0.0dbru.zip curl -O https://download.oracle.com/otn_software/linux/instantclient/214000/instantclient-sdk-linux.x64-21.4.0.0.0dbru.zip unzip instantclient-sdk-linux.x64-21.4.0.0.0dbru.zip curl -O https://pecl.php.net/get/oci8-2.2.0.tgz tar xzvf oci8-2.2.0.tgz ### Instant client echo /usr/local/src/instantclient_21_4 > /etc/ld.so.conf.d/oracle-instantclient.conf ldconfig ### oci8 cd /usr/local/src/oci8-2.2.0 ./configure --with-oci8=instantclient,/usr/local/src/instantclient_21_4 make make install echo 'extension=oci8.so' > /etc/php/7.4/mods-available/oci8.ini phpenmod oci8 ### pdo_oci cd /usr/local/src/php-7.4.3/ext/pdo_oci phpize ./configure -with-pdo-oci=instantclient,/usr/local/src/instantclient_21_4,21.4 make make install echo 'extension=pdo_oci.so' > /etc/php/7.4/mods-available/pdo_oci.ini phpenmod pdo_oci ### 確認 php -m | grep -i oci (oci8, PDO_OCIが出力されたらOK)
上の手順は下の記事を参考に、最新化 & 必要な手順を追加 & 不要な手順を削除したものです。
Install OCI8 dan PDO_OCI ubuntu 20.04 (Ahmad Afandi氏、インドネシア語)
実はもっと簡単な方法があるかもしれませんけど、とりあえず上記でOracle 18にアクセスできるようになりました。