gpt4 book ai didi

php - 使用curl在本地获取.php文件

转载 作者:行者123 更新时间:2023-12-03 23:27:17 25 4
gpt4 key购买 nike

我在 PHP 中使用 curl 来返回 PHP 文件的内容。我想在本地执行此操作,因为我将在同一脚本期间访问多个 PHP 文件,因此直接打开文件会更快。

但是,我希望能够将参数推送到 PHP 文件中(将它们完全视为 Web 上的 PHP 文件,但在本地获取它们),因为我想将参数推送到将生成额外动态内容的脚本中当我捕获它时。

如果我在本地调用文件可以这样做吗?我尝试过使用 file:///直接调用该文件,但这不会运行这些文件中找到的 PHP 代码。

有什么想法吗?

编辑

抱歉造成困惑:-这当前正在网络服务器上运行,并且我当前正在调用 http://(而不是 file:///),因此可以执行这些文件中包含的 PHP。然而,我发现这很慢,因为我生成了多个curl()调用,这些调用本质上是多次调用服务器本身。

最佳答案

你可以这样做:

function php_to_string($php_file, $new_GET = false, $new_POST = false) {
// replacing $_GET, $_POST if necessary
if($new_GET) {
$old_GET = $_GET;
$_GET = $new_GET;
}
if($new_POST) {
$old_POST = $_POST;
$_POST = $new_POST;
}
ob_start();
include($php_file);
// restoring $_GET, $_POST if necessary
if(isset($old_GET)) {
$_GET = $old_GET;
}
if(isset($old_POST)) {
$_POST = $old_POST;
}
return ob_get_clean();
}

$content = php_to_string('my_file.php');
$content = php_to_string('my_file.php', Array('id'=>23)); // http://localhost/my_fie.php?id=23

但请注意它可能会覆盖您现有的变量,导致错误(例如重复定义)等,因此您可以使用 sandbox solution

关于php - 使用curl在本地获取.php文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14488753/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com