Home > Backend Development > PHP Tutorial > PHP函数:stream_context_create()模拟POST/GET

PHP函数:stream_context_create()模拟POST/GET

WBOY
Release: 2016-06-23 13:32:05
Original
900 people have browsed it

有时候,我们需要在服务器端模拟 POST/GET 等请求,也就是在 PHP 程序中去实现模拟,改怎么做到呢?或者说,在 PHP 程序里,给你一个数组,如何将这个数组 POST/GET 到另外一个地址呢?当然,使用 CURL 很容易办到,那么如果不使用 CURL 库,又该怎么办呢?其实,在 PHP 里已经有相关的函数实现了,这个函数就是接下来要讲的 stream_context_create()。


直接 show you the code,这是最好的方法

<?php $data = array(	'foo'=>'bar', 	'baz'=>'boom', 	'site'=>'www.example.net', 	'name'=>'nowa magic'); 	$data = http_build_query($data); //$postdata = http_build_query($data);$options = array(	'http' => array(		'method' => 'POST',		'header' => 'Content-type:application/x-www-form-urlencoded',		'content' => $data		//'timeout' => 60 * 60 // 超时时间(单位:s)	));$url = "http://127.0.0.1/test2.php";$context = stream_context_create($options);$result = file_get_contents($url, false, $context);echo $result;?>
Copy after login


test2.php 的代码为:

<?php $data = $_POST;echo '<pre class="brush:php;toolbar:false">';print_r( $data );echo '
Copy after login
';?>
运行结果为:

Array
(
    [foo] => bar
    [baz] => boom
    [site] => www.example.net
    [name] => nowa magic
)

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template