【发布时间】:2016-12-12 13:50:13
【问题描述】:
AbraCadaver 给了我一个 phpsandbox 的链接。下面的代码适用于http://sandbox.onlinephpfunctions.com/。
为什么它不能在我的电脑上运行?我有 wampstack-5.6.20-0,php 版本 5.6.20 并在 Opera、Firefox、Explorer 和 Chrome 上检查 oce。
我有一个字符串,我想将其拆分成几块,以便用胶水字符串将它们连接起来,或者用胶水字符串(jsonString)preg_replace split_substring(aaaa):
$tmpStr = '<br><div id="10"><p>Displaying 1-5 of 11 results. <br> <span class="disabled">«</span> <span class="disabled">‹</span> Page 1 of 3 pages<a href="?page=2&formData=aaaa" title="Next page">›</a> <a href="?page=3&formData=aaaa" title="Last page">»</a><br>All pages: <a href="?page=1&formData=aaaa">1</a> <a href="?page=2&formData=aaaa">2</a> <a href="?page=3&formData=aaaa">3</a> </p></div><br> ';
$tmpArr = explode("aaaa", $tmpStr);
print_r("<br> 94 EventSearchCOntroller tmpArr =<pre>"); print_r($tmpArr);
结果是:
Array
(
[0] =>
107 PaginatorTrait pagHTML =
Displaying 1-5 of 11 results.
« ‹ Page 1 of 3 pages› »
All pages: 1 2 3
)
$tmpStr2=preg_replace( "/aaaa/", "jsonString", $tmpStr );
$tmpStr2=preg_replace( "/aaaa/", "jsonString", $tmpStr, 100 );
print_r( "<br> 97 EventSearchCOntroller tmpStr2 =".$tmpStr2 );
//Result is in both cases (using 100 limit, and without a limit):
97 EventSearchCOntroller tmpStr2 =
如果我打印结果,则字符串不会被拆分。原因在哪里?
【问题讨论】:
-
什么意思?
$tmpStr2是字符串而不是数组。 -
当您在浏览器上看到输出时,浏览器会解释
-
只查看源码就知道是拆分了。使用浏览器的视图源。
-
如果发生爆炸,字符串不会爆炸。结果是具有单个项目的数组。如果它会爆炸,我会在数组中得到 4 个项目。
标签: php preg-replace explode