我试着从一个对象的文本输出中剥离标签。问题是,我不能。如果我手动输入"<p>http://www.mylink.com</p>"
,它工作得很好!当执行echo $item->text;
时,它给我同样的字符串"<p>http://www.mylink.com</p>";
。执行var_dump
或甚至gettype
时,给我一个string()
。所以,我确信它是一个字符串,但它的行为不像它。我试了几个函数preg_replace
,preg_match
,strip_Tags
,都不行,怎么解决这个问题,怎么调试?
$search = array("<p>", "</p>");
$switch = array("foo", "baa");
//works just fine, when used
$text = "<p>http://www.mylink.com</p>";
//it's a string for sure!
var_dump($item->introtext);
$text = $item->introtext;
//doesn't work
$text = str_replace($search, $switch, $text);
$text = strip_tags($text, "<p>");
//doesn't work either.
$matches = array();
$pattern = '/<p>(.*)<\/p>/';
preg_match($pattern, $text, $matches);
//gives me the following output: <p>http://www.omeulink.com</p>
echo $text;
2条答案
按热度按时间af7jpaap1#
请尝试以下操作
wecizke32#
在将对象输入函数之前将其类型转换为字符串。
$text =(字符串)$item-〉介绍;