在PHP中声明POST变量

在PHP中声明POST变量,php,client-server,Php,Client Server,因此,我正在构建一个web应用程序,它使用iframe提交来异步提交到外部.php服务中的数据/从中提取数据。我对我的项目有一个新的限制,需要能够向下拉取大量数据。通常我会让external.php服务重定向回我的本地页面,并将数据作为查询字符串附加到URL,但我认为这并不安全,因为可能会有5000多个字符长的数据块(更不用说我可能在一个请求中提取多达3个“块”) 那么,我要问大家的问题是,如何在我的.php服务中声明一个POST变量?另外,如果我声明了一个POST变量,它会通过Header('

因此,我正在构建一个web应用程序,它使用iframe提交来异步提交到外部.php服务中的数据/从中提取数据。我对我的项目有一个新的限制,需要能够向下拉取大量数据。通常我会让external.php服务重定向回我的本地页面,并将数据作为查询字符串附加到URL,但我认为这并不安全,因为可能会有5000多个字符长的数据块(更不用说我可能在一个请求中提取多达3个“块”)

那么,我要问大家的问题是,如何在我的.php服务中声明一个POST变量?另外,如果我声明了一个POST变量,它会通过Header('Location:someLocation.php')实际到达我重定向到的页面;(我暗自怀疑它不会)

如果这不是最好的方法,并且有更好的方法从.php文件重定向到带有声明的POST变量的外部位置,请告诉我

***在过去,我使用javascript将表单附加到iframe页面,用所需内容填写文本字段,将表单指向外部页面,然后提交表单。这不是一个可行的替代方案,因为.php是作为服务运行的,因此我在其中放置的任何javascript都不会被执行,因为页面永远不会由浏览器呈现


祝您好运,

利用会话变量。


因以下评论而更新:

您可以尝试使用
cURL
发送帖子

您不需要在PHP中“声明”post变量。您只需通过POST提交数据并从$\u POST检索即可

如果您想将您的服务双重化,以便它可以执行GET和POST,您可以执行以下操作:

switch ($_SERVER['REQUEST_METHOD']) {
    case 'POST':
        $myvar = $_POST['myvar'];
        break;
    case 'GET':
        $myvar = $_GET['myvar'];
        break;
    default:
        die("Unsupport request method");
}

或者,您也可以使用
$\u REQUEST['myvar']
,这是同时使用GET和POST的组合,但最好使用所需的特定超全局,而不是希望通过_REQUEST正确配置内容。

会话变量不起作用,因为这两个.php文件驻留在不同的主机上。就像我说的,我正试图重定向到一个外部位置。谢谢你的回复。@MoarCodePlz——你可以试着用
cURL
发送邮件,Neal,cURL正是我需要的。谢谢你。@MoarCodePlz--欢迎你。我更新了我的答案,我很欣赏这些指点,但我想我可能对我最初的提问太模糊了。我正在寻找一种通过PHP定制和发送http请求的方法。Neal正确地回答了上面提到的cURL php扩展。谢谢你的意见。