当前位置:编程学习 > php >>

php用explode字符串后用一个符号链接,多出了一个符号

<?php function gostrsplit($str) { $str_array = explode(",",$str); for ($j = 0; $j < count($str_array); $j++) { //count也可以用sizeof函数,一定要<,$j < count($str_array); if ($j != count($str_array)){ print $str_array[$j].'→'; }else { print $str_array[$j]; } } } echo gostrsplit("1,2,3"); ?>
追问:其实我要拼成一个判断里面的条件
if ( ( $i_week == $arrayAttenddate[0] || $i_week == $arrayAttenddate[1] || $i_week == $arrayAttenddate[2] ) ) {
}
$arrayAttenddate[0]  是explode(",",$str)得到的
答案:因为上面的循环 j 最大值也就是2,所以不会走到 else 就会结束了。
你把
if ($j != count($str_array)){
修改成
if ($j+1 != count($str_array)){
应该就可以了
其他:这样更简单:
<?php
function gostrsplit($str) {
    $str_array = explode(",",$str);
    return implode('→', $str_array);
}
echo gostrsplit("1,2,3");
?> 你的意思是要把本来是由“,”分隔的字符串变成使用“→”分隔吗?
 jlddy84给出的是解决方法,因为$j永远不等于count($str_array)。
还有方法是:
1、使用替换的方法,str_replace(",", "→", $str);
2、使用implode("→", $str_array);
这样不是简单一些。 你的要求准确说法叫“中文分词”。类似百度搜索那样的功能。
印象当中,DEDECMS出过一个PHP分词,你可以去找找看。
 

上一个:php中用COOKIE定位独立用户
下一个:PHP 如何获取XML 标签的内容

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,