Php 从响应中读取值

Php 从响应中读取值,php,laravel,guzzle,guzzlehttp,Php,Laravel,Guzzle,Guzzlehttp,我使用Guzzle和Laravel从带有HTTP的外部API获取对象。API返回与此类似的XML对象 我需要检查响应体的一个值。这是我的密码: $client = new \GuzzleHttp\Client(); $res = $client->request('GET', 'https://www.w3schools.com/php/note.xml'); $stringBody = (string) $res->getBody()->getContents

我使用Guzzle和Laravel从带有HTTP的外部API获取对象。API返回与此类似的XML对象

我需要检查响应体的一个值。这是我的密码:

$client = new \GuzzleHttp\Client();    
$res = $client->request('GET', 'https://www.w3schools.com/php/note.xml');    
$stringBody = (string) $res->getBody()->getContents();
echo $stringBody;
这是工作正常,我的意思是它显示身体如下图

但我不能得到一个值? 我尝试了不同的方法,但没有一种有效! 例如,这样做:

$result = starts_with($stringBody, 'Tove');

没有人在工作?我认为它认为正文是空的?

我尝试使用json_解码,但它不起作用或不再受支持

有什么想法吗?
谢谢

您从回复中得到的是xml内容。由于浏览器与XML的兼容性,您只能看到文本。您只需要php的SimpleXML类就可以按照XML节点获取内容。下面是示例代码

    $client = new \GuzzleHttp\Client();
    $res = $client->request('GET', 'https://www.w3schools.com/php/note.xml');
    $stringBody = (string) $res->getBody()->getContents();
    $xml =  simplexml_load_string($stringBody);
    echo $xml->to;

希望这对您有所帮助。

尝试使用dd$stringBody输出$stringBody。这样你可以看到变量的精确值。谢谢。这就是我想要的:
    $client = new \GuzzleHttp\Client();
    $res = $client->request('GET', 'https://www.w3schools.com/php/note.xml');
    $stringBody = (string) $res->getBody()->getContents();
    $xml =  simplexml_load_string($stringBody);
    echo $xml->to;