PHP:substr返回空字符串
因此,我的PHP文件中的substr函数有一个空字符串 以下是我的PHP代码:PHP:substr返回空字符串,php,string,substr,Php,String,Substr,因此,我的PHP文件中的substr函数有一个空字符串 以下是我的PHP代码: <?php $requestArray = array( 'http'=>array( 'method'=>"GET", 'header'=>"User-agent: MKUxA&8PtUYP(d3So)pfPSIvD5cf75" ) ); $stream = stream_context_create($requestArray); $streamR
<?php
$requestArray = array(
'http'=>array(
'method'=>"GET",
'header'=>"User-agent: MKUxA&8PtUYP(d3So)pfPSIvD5cf75"
)
);
$stream = stream_context_create($requestArray);
$streamResult = file_get_contents('https://beoordelingen.feedbackcompany.nl/samenvoordeel/scripts/flexreview/getreviewxml.cfm?ws=9673&publishIDs=0&nor=0&publishDetails=0&publishDetailScores=0&publishOnHold=0&sort=desc&foreign=1&v=3&publishDetailScores=1&Basescore=10', false, $stream);
$str = substr($streamResult, 0, 3);
var_dump($str);
echo "<br>";
var_dump($streamResult);
echo "<br>";
var_dump($http_response_header);
?>
有谁能告诉我我做错了什么并帮我解决问题吗?返回的内容是正确的,但您可以在浏览器中看到上面的结果,因为浏览器会解释标记 你的结果是: 编辑: 返回的数据是XML,因此要解析它,必须使用
DOMDocument
(或其他解析器):
我们将输出的示例如下:
8.7
var_dump($streamResult)的结果是什么代码>?您输入的结果?它是结果中的所有内容,但是:字符串(3)您是否成功地获得了streamResult
?也许您必须检查您的系统或浏览器缓存;这是var_dump($str)的输出;在我的本地环境上:string'showvar\u dump($http\u response\u header)代码>好的,那么当我想要和之间的字符时,我必须做一个子字符串直到?
string(3) "string(251) " 8.7109https://beoordelingen.feedbackcompany.nl/NL-NL/De%2DMariannehoeve.html "
array(6) { [0]=> string(15) "HTTP/1.1 200 OK" [1]=> string(37) "Content-Type: text/xml; charset=UTF-8" [2]=> string(25) "Server: Microsoft-IIS/7.5" [3]=> string(21) "X-Powered-By: ASP.NET" [4]=> string(35) "Date: Mon, 22 Feb 2016 13:39:34 GMT" [5]=> string(17) "Connection: close" }
<?xml version="1.0" encoding="UTF-8" ?>
<rating><score>8.7</score><scoremax>10</scoremax><noReviews>9</noReviews><detailslink>https://beoordelingen.feedbackcompany.nl/NL-NL/De%2DMariannehoeve.html</detailslink><reviewDetails></reviewDetails></rating>
echo htmlentities( $streamResult );
$dom = new DOMDocument();
$dom->loadXML( $streamResult );
$score = $dom->getElementsbyTagName( 'score' )->item(0)->nodeValue;
echo $score;