2014-07-17 96 views
1

非常简单的问题(我没有发现类似的问题)。在一个特殊字符串之前剪切字符串并返回其他

我在字符串这个打击HTML代码:

$one = "<html> 
<head> 
something> 
</head> 
<body> 
</body> 
</html>"; 

如何返回这个(从哪里<body>开始:

$two = "<body> 
</body> 
</html>"; 

我需要找到<body>开始的位置,然后删除

怎么办?

谢谢。

回答

1

您需要使用strpos()substr()函数。在我的情况下,我使用mb_等价物,因为该网站可能包含非ASCII字符。

mb_internal_encoding('UTF-8'); 
$pos = mb_strpos($one, '<body>'); 
if ($pos !== false) { 
    $two = mb_substr($one,$pos); 
} 
else { 
    $two = $one; 
} 
1
$two = substr($one, (strpos($one, '<body>')); 
2

你看这个,使用strstr()

$one = "<html> 
<head> 
something> 
</head> 
<body> 
</body> 
</html>"; 

$two = strstr($one, '<body>'); 

DEMO

相关问题