求字符串截取算法 字符串:a.b.c=>需要截取b.ca.b.c.d=>需要截取b.c.d就这两种情况,有什么比较好的方法? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 function mysubstr($str) { return substr($str, stripos($str, '.') + 1);}echo mysubstr('a.b.c');echo mysubstr('a.b.c.d'); //再来一个function mysubstr($str) { $ar = explode('.', $str); array_shift($ar); return implode('.', $ar);}echo mysubstr('a.b.c');echo mysubstr('a.b.c.d'); function mysubstr($str) { $ar = explode('.', $str); if (count($ar) > 4) $ar = array_slice($ar, -3); else array_shift($ar); return implode('.', $ar);}echo mysubstr('a.b.c');echo mysubstr('a.b.c.d');echo mysubstr('a.b.c.d.e.f'); 官方都有现成的函数了。楼上几位居然还自己写自定义的函数。累不累呢?而且,效率还无PHP内置的函数高。<?php$rest = substr("abcdef", -1); // returns "f"$rest = substr("abcdef", -2); // returns "ef"$rest = substr("abcdef", -3, 1); // returns "d"?> $rest = substr("abcdef", 0, -1); // returns "abcde"$rest = substr("abcdef", 2, -1); // returns "cde"$rest = substr("abcdef", 4, -4); // returns ""$rest = substr("abcdef", -3, -1); // returns "de"echo substr('abcdef', 1); // bcdefecho substr('abcdef', 1, 3); // bcdecho substr('abcdef', 0, 4); // abcdecho substr('abcdef', 0, 8); // abcdefecho substr('abcdef', -1, 1); // f// Accessing single characters in a string// can also be achieved using "square brackets"$string = 'abcdef';echo $string[0]; // aecho $string[3]; // decho $string[strlen($string)-1]; // fhttp://www.phpcxz.com/a/web/ 专门讲PHP web wap 开发方面资料的。 $newstr=substr($str, stripos($str, '.') + 1);如果你的字符串格式都是w.x.y.z或者x.y.z那就干脆substr($str, 2); $string = 'a.b.c.d.e.f.s';print_r(array_slice(explode('.', $string),1,3));/*输出结果:Array ( [0] => b [1] => c [2] => d ) */ 腾讯论坛漏洞,快进来围观。 请问同一浏览器会话每次刷新Session ID都不一样? 关于开发SNS 初试PHP,发现奇怪问题 问一个很弱的问题,PHP从MYSQL取出的值是什么类型的? affected_rows在adodb里对应的是什么啊? 数字分页??????急!! [再问]关于SQL的问题,大家帮忙看看 请教一个sql 查询应该怎么写. 菜鸟请教:PHP网页调用订单打印出的字体太小怎么可以解决! 请教一下 imagecopymerge函数合成图片以后 如何保存啊 在php代码中,给一个变量赋值,值太长,如何换行显示呢?
return substr($str, stripos($str, '.') + 1);
}echo mysubstr('a.b.c');
echo mysubstr('a.b.c.d');
function mysubstr($str) {
$ar = explode('.', $str);
array_shift($ar);
return implode('.', $ar);
}echo mysubstr('a.b.c');
echo mysubstr('a.b.c.d');
$ar = explode('.', $str);
if (count($ar) > 4) $ar = array_slice($ar, -3);
else array_shift($ar);
return implode('.', $ar);
}echo mysubstr('a.b.c');
echo mysubstr('a.b.c.d');
echo mysubstr('a.b.c.d.e.f');
$rest = substr("abcdef", -1); // returns "f"
$rest = substr("abcdef", -2); // returns "ef"
$rest = substr("abcdef", -3, 1); // returns "d"
?>
$rest = substr("abcdef", 0, -1); // returns "abcde"
$rest = substr("abcdef", 2, -1); // returns "cde"
$rest = substr("abcdef", 4, -4); // returns ""
$rest = substr("abcdef", -3, -1); // returns "de"
echo substr('abcdef', 1); // bcdef
echo substr('abcdef', 1, 3); // bcd
echo substr('abcdef', 0, 4); // abcd
echo substr('abcdef', 0, 8); // abcdef
echo substr('abcdef', -1, 1); // f// Accessing single characters in a string
// can also be achieved using "square brackets"
$string = 'abcdef';
echo $string[0]; // a
echo $string[3]; // d
echo $string[strlen($string)-1]; // f
http://www.phpcxz.com/a/web/ 专门讲PHP web wap 开发方面资料的。
那就干脆substr($str, 2);
$string = 'a.b.c.d.e.f.s';
print_r(array_slice(explode('.', $string),1,3));
/*
输出结果:
Array ( [0] => b [1] => c [2] => d )
*/