大佬教程收集整理的这篇文章主要介绍了PHP在函数nl2br中的奇怪行为,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我当时正在处理小型Web应用程序的重构.一整夜.今天,当我开始测试时,发现的第一个错误是系统PHP函数nl2br()存在问题.
在我的本地主机上,我具有@L_696_4@版本5.2.9,并且从版本4.0.5的PHP site中可以看到,nl2br()是XHTML兼容的.
那么我绝对不明白为什么我的nl2br()返回< br>而不将第二个参数设置为false而不是< br />.
public function eliminateTags($msg) {
$setBrakes = nl2br($msg);
$decodeHTML = htmlspecialchars_decode($setBrakes);
# check @L_696_4@ version
if((int)version_compare(@L_696_4@_VERSION, '4.0.5') == 1) {
$withoutTags = Strip_tags($decodeHTML, '<br />');
} else {
$withoutTags = Strip_tags($decodeHTML, '<br>');
}
return $withoutTags;
}
解决方法:
我不确定我是否理解您要使用此功能完成的工作.首先,在每一行中插入HTML分隔符,然后剥离除分隔符之外的所有标签.
public function eliminateTags($msg) {
$decodeHTML = htmlspecialchars_decode($msg);
$withoutTags = Strip_tags($decodeHTML);
$setBreaks = nl2br($withoutTags);
return $setBreaks;
}
编辑:
显然您没有正确使用Strip_tags().您需要询问@L_696_4@要排除哪个标签,这是< br>而不是< br />.要求@L_696_4@排除< br />就像要求排除< p>< / p>这是行不通的.
反过来,这意味着您不必检查@L_696_4@版本-Strip_tags()可以在所有版本中正常工作.
以上是大佬教程为你收集整理的PHP在函数nl2br中的奇怪行为全部内容,希望文章能够帮你解决PHP在函数nl2br中的奇怪行为所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。