❶ php怎么用substr函数截取字符串中的某部分
1、从第4个字符开始截取到字符串末尾,类似asp中的left:
输出: lacecake.com
2、PHP substr函数从右边截取3个字符,类似asp中的right:
输出:.com
3、PHP substr函数从第4个字符开始截取3个字符:
输出:lac
4、有时我们知道一个字符串的开始和结尾,中间是不定长的字符,这时除了用PHP substr函数的正则外我们还可以用substr实现(当然要得到中间的字符方法有N种,在此只是举例substr的应用):
本例去掉开头4个字符和结尾3个字符,输出中间的字符串:
输出:lacecake.
❷ php 中文字符串截取问题
preg_split()函数的意思。(意思为通过一个正则表达式分隔给定字符串)
array_splice() 函数与 array_slice() 函数类似,选择数组中的一系列元素,但不返回,而是删除它们并用其它值代替。
join() 方法用于把数组中的所有元素放入一个字符串。
<?php
$str = 'hypertext language programming';
$chars = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);
print_r($chars);
?>
会输出
Array(
[0] => Array (
[0] => hypertext
[1] => 0
)
[1] => Array (
[0] => language
[1] => 10
)
[2] => Array (
[0] => programming
[1] => 19
)
)
❸ php截取字符串函数
$str=implode("|",$arr);
echo $str;
input:
小明|小黑|小天|小白
❹ 如何利用PHP来截取一段中文字符串而不出现乱码
/*
功能:截取全角和半角混合的字符串以避免乱码
参数:
$str_cut 需要截断的字符串
$length允许字符串显示的最大长度
*/
functionsubstr_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有没有一种函数能从一个字符串中截取一段出来啊。
substr()和mb_substr()的用法一样,区别只是mb_substr()可以针对中文,就是中英文的字符长度问题,英文占用一个字符,一个汉字占用两个字符。
substr(string,start,length)
其中start的参数
正数 - 在字符串的指定位置开始
负数 - 在从字符串结尾的指定位置开始
0 - 在字符串中的第一个字符处开始
strstr() 函数搜索一个字符串在另一个字符串中的第一次出现
配合这几个函数就可以做到很强大的截取功能。
❻ php 怎么截取汉字字符串
?php
$str = '这样一来我的字符串就不会有乱码^_^';
echo "mb_substr:" . mb_substr($str, 0, 7, 'utf-8');
//结果:这样一来我的字
echo "
";
echo "mb_strcut:" . mb_strcut($str, 0, 6, 'utf-8');
//结果:这样
?
首先
1.确保你的Windows/system32下有php_mbstring.dll这个文件,没有就从你Php安装目录extensions里拷入Windows/system32里面。
2.在windows目录下找到php.ini打开编辑,搜索mbstring.dll,找到
;extension=php_mbstring.dll把前面的;号去掉,这样mb_substr函数就可以生效了
mb_strcut函数功能也可以截取字符串长度,下面实例具体看看区别在哪:
mb_substr();