系统调用PHP

时间:2011-04-15 14:51:57

标签: php system-calls

对此有点问题。 脚本A调用/包括脚本B.脚本B必须执行系统调用并返回脚本A.失败。 当我自己调用脚本B时,它工作正常,我无法通过在A上调用它来让它工作。我已经尝试了

  • 将其包含在A
  • 使用A
  • 中的其他系统调用来调用它
  • 制作一个调用B然后用A调用该bash脚本的bash脚本(I N C E P T I O N)

我有什么选择?

编辑代码:

<?php
//B.php
//works fine when called on its own
function readsite ($url)
{
      $output=system("curl -ks $url");
      return $output;
}
?>


<?php
//A.php
include_once("B.php");
$url="www.google.com";
$read=readsite($url);
echo $read;
?>

1 个答案:

答案 0 :(得分:0)

我认为您在此尝试解决的问题是获取网站的内容。

尝试以下内容:

function readsite($url) {
    $ch = curl_init();
    curl_setopt($ch,  CURLOPT_URL, $url);
    curl_setopt($ch,  CURLOPT_RETURNTRANSFER, true); 
    $result = curl_exec ($ch); 
    curl_close($ch);
    return $result;
}

curl扩展为您提供了一种相对理智且稳定的方式来获取PHP中的内容。 Look at the docs for more information

这假设了php-curl扩展的可用性。

当然(正如lonesomeday指出的那样)你应该将方案添加到网址(使用'http://www.google.com'作为网址)。