> 백엔드 개발 > PHP 튜토리얼 > PHP关于file_get_contens函数向本地文件传参数的问题

PHP关于file_get_contens函数向本地文件传参数的问题

WBOY
풀어 주다: 2016-06-23 13:52:19
원래의
746명이 탐색했습니다.

PHP关于file_get_contens函数向本地文件传参数的问题

源码如下:
$str_query = "userId=admin&gameId=game1&serverId=server1";


$context= stream_context_create(array(
'http'=> array(
'method'=> 'POST',
'timeout' => 10,
'header'=> 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.13 (KHTML, like Gecko) Chrome/9.0.597.98 Safari/534.13\r\nContent-type: application/x-www-form-urlencoded\r\n',
'content'=> $str_query
)
));

echo file_get_contents("interface.php",true, $context);

?>

本地Aparche服务器上就两个文件。一个是放以上源码的文件。一个是interface.php文件。

我在此文件上写上如上的源码。用file_get_contents向interface.php文件POST数据。结果interface.php没有接收到数据。

不知道是在哪里出错了。求高手赐教!!!!


回复讨论(解决方案)

需要有协议类型
echo file_get_contents(" http://localhost/interface.php",true, $context);

另外参数数组中
header 项要写成
'header'=> "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.13 (KHTML, like Gecko) Chrome/9.0.597.98 Safari/534.13\r\nContent-type: application/x-www-form-urlencoded\r\n",

只在双引号中 \r\n 才会生效

另外参数数组中
header 项要写成
'header'=> "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.13 (KHTML, like Gecko) Chrome/9.0.597.98 Safari/534.13\r\nContent-type: application/x-www-……



哦? 就是说没有HTTP这样就肯定不行了咯!!!

这点参数直接curl get 就是了

引用 3 楼  的回复:
另外参数数组中
header 项要写成
'header'=> "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.13 (KHTML, like Gecko) Chrome/9.0.597.98 Safari/534.13\r\nContent-type: app……

没有互联网协议,只不过是文件系统函数。你非要猴子去飞,那是办不到的。孙悟空也只是借着菩提老祖的口诀翻翻筋斗而已

为什么会file_get_contents能获取到完整的json内容,而用curl获取却是不完整的json内容呢?

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿