2014-06-30 130 views
0

我有一個PHP腳本叫做a.php,它調用exec()執行php命令將數據發送到另一個平臺,然後從中獲取數據。我發現了很多信息。我仍然按照他們的方式失敗。php執行功能通過瀏覽器執行php腳本不同於不通過瀏覽器

a.php使用curl發送數據並使用json_decode()解析來自curl_exec()函數的數據。

我的環境:

  • PHP 5.3.2
    • 的php.ini
      • safe_mode設置=關
      • disable_functions選項=
  • 服務器:Apache
  • 操作系統:Linux

在我的PHP類:

我用exec("php a.php > /data0/log/log.log"),然後我通過瀏覽器訪問它,但我什麼也得不到。

最後我發現我可以使用php exec來執行php腳本,因爲我在發送數據的平臺上查找數據。然而a.php什麼也沒有顯示。我也覺得沒什麼/data0/log/log.log,但如果我在Linux下使用php a.php > /data0/log/log.log,那麼我就可以找到我在a.php只會使用「echoprint_r」的信息,所以我覺得a.php只會是正確的。

我使用exec("php -cli a.php > /data0/log/log.log &"),我得到了undefined函數json_decode()/data0/log/log.log

我不知道如何解決這個問題。但在我的另一臺服務器中,它可以成功執行。我只使用exec("php a.php")

感謝
麪包車

回答

0

我必須解決這個問題。 細節是,PHP在Linux中有兩個版本。 所以我只分配了php的路徑。

相關問題