首先来看下两个方法的定义: 函数原型:array split (string $pattern,string $string [,int $limit]) 函数原型:array explode ( string $separator,int $limit]) 初看没有啥差别,貌似功能都一样。我就犯了这个错误。 请注意两个函数的第一个参数string $pattern和string separator,一个是$pattern说明是正则字符串,一个是$separator是普通字符串。 看下面的代码: <div class="codetitle"><a style="CURSOR: pointer" data="11977" class="copybut" id="copybut11977" onclick="doCopy('code11977')"> 代码如下:<div class="codebody" id="code11977"> $test = end(explode('.','abc.txt')); echo $test;//output txt 换成: <div class="codetitle"><a style="CURSOR: pointer" data="3691" class="copybut" id="copybut3691" onclick="doCopy('code3691')"> 代码如下:<div class="codebody" id="code3691"> $test1 = end(split('.','abc.txt')); echo $test1;//no output 用split的正确做法是:加转义符号 <div class="codetitle"><a style="CURSOR: pointer" data="81665" class="copybut" id="copybut81665" onclick="doCopy('code81665')"> 代码如下:<div class="codebody" id="code81665"> $test1 = end(split('.','abc.txt')); echo $test1;//output txt 分析:"." 符号是正则表达式的关键字所以split无效,而explode有效。 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|