我有以下代码:
$string = "aaa<test>xxx</test>bbb";
echo substr($string, 9);
结果应该是: xxx</test>bbb
与此同时,我只收到: xxxbbb
标签怎么了?为什么这个功能会自动裁剪它!如果我用 [ 替换 < 作品...我想在我的变量中获得一个结束标签。
我有以下代码:
$string = "aaa<test>xxx</test>bbb";
echo substr($string, 9);
结果应该是: xxx</test>bbb
与此同时,我只收到: xxxbbb
标签怎么了?为什么这个功能会自动裁剪它!如果我用 [ 替换 < 作品...我想在我的变量中获得一个结束标签。
如果您查看源代码,您还将有</test>
标签。它在浏览器中不可见,因为它已经被渲染为空。
要打印这种结果,请使用
var_dump( substr($string, 9) );
这是因为浏览器将其<test></test>
作为 html 标签,因此您无法在浏览器中看到它。
查看源代码会对您有所帮助。
如果你在浏览器中查看 php 文件的查看源(在 chrome 中是 crtl+u),你可以看到
xxx</test>bbb
你可以看到它,因为它</test>
被浏览器解释为标签。
如果您在命令行中执行此操作,则效果很好。您是否正在通过浏览器查看输出?浏览器可能会尝试解析标签然后忽略它。