传递参数并执行另一个PHP脚本

时间:2012-04-12 12:47:25

标签: php text

我有一个php脚本script1.php。我想将参数传递给script2.php并从script1.php执行它。 (script2.php将输出保存到script1.php中使用的文本文件中)

编辑:

这是我的script2.php

require_once('showtimes/simple_html_dom/simple_html_dom.php');

$html = new simple_html_dom();
//$requested4=$_GET['place'];
$html->load_file('http://www.google.com/movies?near=${requested4}&hl=en');
ob_start(); 

$muv='<pre>';
foreach($html->find('#movie_results .theater') as $div) {
    // print theater and address info
$muv=$muv."Theatre:  ".$div->find('h2 a',0)->innertext."\n";
$muv=$muv."Address: ". $div->find('.info',0)->innertext."\n";

    // print all the movies with showtimes
    foreach($div->find('.movie') as $movie) {
       $muv=$muv."\tMovie:    ".$movie->find('.name a',0)->innertext.'<br />';
      $muv=$muv."\tTime:    ".$movie->find('.times',0)->innertext.'<br />';
    }
    $muv=$muv. "\n\n";
}
$muv=$muv."</pre>";
//ob_get_contents(); 
ob_end_clean(); 
echo $muv;
file_put_contents('textfiles/file.txt', $muv);  
$html->clear();

?>

如果我只是执行它,它可以正常工作,但如果我将它包含在script1.php中,我会收到此错误

Fatal error: Call to a member function find() on a non-object in /home/anandheg/public_html/anandghegde.in/se/showtimes/simple_html_dom/simple_html_dom.php on line 879

另外,我在服务器上没有shell执行权限。

2 个答案:

答案 0 :(得分:1)

您可以在script1.php

中包含script2.php
include 'script2.php';

您不必在script2.php中传递参数,在include语句之前存在的变量将在script2.php中正常显示。

答案 1 :(得分:0)

使用反引号来调用系统命令

<?php
`script1.php any_command_line_options_goes_here`;

//example
`/usr/bin/php -i`;

然后你可以在script1.php

中执行后读取文件