我有一个PHP脚本,它遍历电影数据列表并解析该数据以返回电影标题和多个企业的评级。我希望将数据解析脚本作为一个文件包含在几个不同的文件中,因此,如果我需要编辑电影数据解析器脚本,它所包含的每个文件都是相同的。
这是完美运行的数据解析脚本的代码。 对于文件名,我需要将其替换为变量,因此当包含在另一个文件中时,我可以将该文件名变量更改为正确的电影列表的名称。最初,我让每个企业都有自己的php数据解析脚本,但它不是很可维护。
foreach (glob('mov/FILENAME.*mov') as $filename){
$theData = file_get_contents($filename) or die("Unable to retrieve file data");
}
$string = $theData;
$titles = explode("'n", $string);
function getInfo($string){
$Ratings = ['G', 'PG', 'PG-13', 'R', 'NR', 'XXX'];
$split = preg_split("/'"(.+)'"/", $string, 0, PREG_SPLIT_DELIM_CAPTURE);
if(count($split) == 3){
preg_match("/(".implode("|", $Ratings).")'s/", $split[0], $matches);
$rating = $matches[0];
return ["title" => $split[1], "rating" => $rating];
}
return false;
}
最后是问题:
在数据解析脚本中。我将如何实现一个显示"FILENAME"的变量,以及当我将此脚本包含在另一个文件中时。如何将变量分配给正确的文件名并输出/运行脚本?
您应该将
包含文件中的代码实现为函数,FILENAME
应该是函数的参数。然后,所有其他脚本都可以包含该文件,并使用适当的文件名调用函数。
同样,$theData
应该是函数的返回值,而不是全局变量。