我有一个PHP脚本,比如a.php
,使用Ajax从JS调用(这是一个POST请求,一些数据传递给脚本)。
我有另一个PHP脚本,比如b.php
,我想从中调用a.php
并传递一些数据。我希望a.php
能够完成这项工作,就像从JS调用它一样。
由于变量名称之间可能存在冲突,我不想include('a.php');
。
我怎么能这样做?
答案 0 :(得分:3)
为什么不把这些作为函数放在一起,使用include,并像在C ++中那样调用它们? Global is bad.
答案 1 :(得分:2)
一个解决方案(如果不完善)是将file_get_contents()
与URL一起使用。
所以,比如:
$data = file_get_contents('http://domain.com/a.php?this=that&that=this');
$json = json_decode($data);
答案 2 :(得分:1)
您可以使用curl或file_get_contents通过HTTP拨打电话。但我认为你应该考虑重新设计。无论是程序编写还是使用OOP编写,您都应该能够拥有一个没有冲突的多文件程序。
答案 3 :(得分:1)
如果您使用的是PHP 5.3,则可以使用Namespaces来避免变量名冲突问题。
另一个建议是重构您的代码,以便您可以包含该文件,然后调用函数来执行它。函数调用中的所有变量只有函数的范围。
答案 4 :(得分:0)
一种方法是从b.php
发起服务器请求,其中包含客户端通常使用的a.php
网址。