0
$results = simplexml_load_string($results);
foreach($results as $result){
    $result_title = $result->label;
    $result_title = preg_replace('#[^a-zA-Z]+Extra Title#', '', $result_title);
    $result_title = ltrim($result_title);

第一个 preg_replace 去掉了 $result->label 末尾的模式(var_dumps 作为 XML 对象)并输出,不是 XML 对象,而是字符串。

这很令人惊讶,因为我认为 preg_replace 只适用于字符串而不适用于 XML 对象。$result 中的Avar_dump显示:

object(SimpleXMLElement)#1003 (1) { [0]=> string(31) " Some Text > Extra Title" }

请注意“一些文本”之前的额外空格。但是,第二个ltrim($result_title);会导致此错误:

未捕获的类型错误:对象 [对象对象] 没有“建议”方法

那我在处理什么?字符串还是对象?以及如何修剪空白?

为第一个空格尝试 preg_replace 也会输出与上述相同的错误。

$result_title = preg_replace('/\s/', '', $result_title, 1);
4

0 回答 0