本文目录一览:
- 1、写一个截取字符串的php函数
- 2、php,cut_str()是怎么用的?
- 3、如何利用PHP来截取一段中文字符串而不出现乱码
- 4、php截取字符串函数
- 5、php的一个函数 将一个比较长的字符串截取为一个短的,多余的用...代替的
写一个截取字符串的php函数
function str_cut($start_str,$end_str){
global $str;//原字符串
$arr=array();
$s=strstr($str,$start_str);//假如你包含$start_str
$i=strpos($s,$end_str);
if (! $i===false)
{
$s=substr($s,0,$i);
if (! strpos($s,'img')===false)
{
$temp=explode('img',$s);
for ($j=1;$jsizeof($temp);$j++)
{
if (! strpos($temp[$j],'src=')===false)
{
ereg("([^='\"]*).(GIF|gif|jpg|JPG)",$temp[$j],$a); $arr[]=$a[0];
}
}
}
}
return $arr;
}
php,cut_str()是怎么用的?
PHP 中没有叫 cut_str() 的库函数,它可能是你所用的那套软件的开发者自定义的函数,你应该从相关的代码中去找该函数的定义来理解它的使用方法。
如何利用PHP来截取一段中文字符串而不出现乱码
/*
功能:截取全角和半角混合的字符串以避免乱码
参数:
$str_cut 需要截断的字符串
$length 允许字符串显示的最大长度
*/
function substr_cut($str_cut,$length = 30){
if (strlen($str_cut) ; $length){
for($i=0; $i $length; $i++)
if (ord($str_cut[$i]) ; 128) $i++;
$str_cut = substr($str_cut,0,$i) . "...";
}
return $str_cut;
}
说明:
程序的关键语句是:
for($i=0; $i $length; $i++)
if (ord($str_cut[$i]) ; 128) $i++;
$str_cut = substr($str_cut,0,$i) . "...";
如果字符的ASCII码大于128,说明当前字符和下一个字符是属于一个汉字的。
则,$i++ 跳过对下一个字符的判断。
再结合循环中的 $i++ ,实际上,当遇到一个汉字时,$i 就会加 2 ,从而正确的跳过汉字。
最终实现的效果是,$i 变量指向的要么是半角的字符,要么是全角汉字的首字符,不会指向
全角汉字的第二个字符,所以,当$i ;= $length 时,循环结束,使用
$str_cut = substr($str_cut,0,$i) . "..."; 截取字符时自然也就不会出现乱码了。
本人在写一个程序时需要利用PHP从一段字符串中截取指定长度的一段字符下来。以前在写ASP的时候,参考动网的程序写过类似的程序,不过,还没用PHP写过。
想偷懒,看有不有现成的代码可以用。于是,在GOOGLE中输入:PHP 截断字符 后查找到一段代码。
php截取字符串函数
php
//构造字符串
$str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
echo "原字符串:".$str."
";
//按各种方式进行截取
$str1 = substr($str,5);
echo "从第5个字符开始取至最后:".$str1."
";
$str2 = substr($str,9,4);
echo "从第9个字符开始取4个字符:".$str2."
";
$str3 = substr($str,-5);
echo "取倒数5个字符:".$str3."
";
$str4 = substr($str,-8,4);
echo "从倒数第8个字符开始向后取4个字符:".$str4."
";
$str5 = substr($str,-8,-2);
echo "从倒数第8个字符开始取到倒数第2个字符为止:".$str5."
";
?
支持中英文混合截取。
代码如下 复制代码
/*
------------------------------------------------------
参数:
$str_cut 需要截断的字符串
$length 允许字符串显示的最大长度
程序功能:截取全角和半角(汉字和英文)混合的字符串以避免乱码
------------------------------------------------------
*/
function substr_cut($str_cut,$length)
{
if (strlen($str_cut) $length)
{
for($i=0; $i $length; $i++)
if (ord($str_cut[$i]) 128) $i++;
$str_cut = substr($str_cut,0,$i)."..";
}
return $str_cut;
}
?
php的一个函数 将一个比较长的字符串截取为一个短的,多余的用...代替的
定义和用法
substr() 函数返回字符串的一部分。
语法
substr(string,start,length)
例子 2
?php
echo substr("Hello world!",6,5);
?
输出:
world
函数结果后面再接上...
参考资料