cron,execコマンドを実行する時に必要となる php パス の調査方法について
下記のような方法があることを教えていただきました。
https://teratail.com/questions/9827
lang
1<?php 2 echo exec('which php'); 3?>
lang
1<?php 2 //php >= 5.4 3 echo PHP_BINARY; 4?>
色々とテストしてみたところ、ここでのphpバージョンは、環境設定で指定されているバージョンで、現在実行されているプログラムファイルを処理しているphpバージョンとは必ずしも一致しませんでした。
例えば、xserverで「PHP5.3」で利用するようにサーバーパネルで設定。
execで別なファイルを呼び出します。
呼び出すファイルによる PHP_VERSION = php5.3.3
呼び出されたファイルによる PHP_VERSION = php4.3.9
xserverはphpのバージョンによりパスが異なります。
PHP4 /usr/bin/php
PHP5.1 /usr/bin/php5
PHP5.2 /usr/bin/php5.2
PHP5.3 /usr/bin/php5.3
PHP5.4 /usr/bin/php5.4
PHP5.5 /usr/bin/php5.5
実行中のphpバージョンのパスを取得できればと思うのですが、
方法はあるでしょうか?
【追記】
目的は「レンタルサーバーで設定したphpバージョンでexecを動かす」です。
利用者に調べてもらうのも良いのですが、情報がとても調べにくく、
個別(レンタルサーバーごと)に対応するのは難しい。
想定している運用は次のとおりです。
1)プログラムの利用者に設定画面にアクセスしてもらう。
2)そこで動いているphpバージョンをチェックする。
3)exec 実行時のphpパスの情報を確定・保存する。
4)exec は保存しておいたphpパスを利用して実行する。
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/05/14 14:54
退会済みユーザー
2015/05/15 06:10