2024-09-28 09:29:42 | 我爱编程网
1.substr(源字符串,其实位置[,长度])-截取字符串返回部分字符串
<?php$str="phpddt.com";echosubstr($str,2);//pddt.comechosubstr($str,2,3);//pddechosubstr($str,-2);//om负数从结尾开始取?>但是当你截取中文字符串的时候很容易出现乱码,因为一个汉字是两个字节,而一个英文字母是一个字节。解决办法如下.
2.mb_substr(),使用方法和substr相同,不过要开启php.ini里面extension=php_mbstring.dll扩展,不用担心,一般的空间商都会开启这个扩展的。
<?phpechomb_substr("php点点通",1,3,"UTF-8");//hp点?>代码如下:
substr(string,start,length)
其中start的参数
正数-在字符串的指定位置开始
负数-在从字符串结尾的指定位置开始
0-在字符串中的第一个字符处开始
strstr()函数搜索一个字符串在另一个字符串中的第一次出现。
该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回false。
strstr('abc@jb51.net','@',TRUE);//参数设定true,返回查找值@之前的首部,abc
strstr('abc@jb51.net','@');//默认返回查找值@之后的尾部,@jb51.net
网上也有很多中文字符串截取教程,实现起来比较复杂,感觉还是用php自带的函数实现起来比较好。整理的网络资料(php代码)如下:
(1)截取GB2312中文字符串
<?php//截取GB2312中文字符串functionmysubstr($str,$start,$len){$tmpstr="";$strlen=$start+$len;for($i=0;$i<$strlen;$i++){if(ord(substr($str,$i,1))>0xa0){$tmpstr.=substr($str,$i,2);$i++;}else$tmpstr.=substr($str,$i,1);}return$tmpstr;}echomysubstr("php点点通",1,5);//php点?>(2)截取utf8编码的多字节字符串
<?php//截取utf8字符串functionutf8Substr($str,$from,$len){returnpreg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'.'((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s','$1',$str);}echoutf8Substr("php点点通",1,5);//hp点点通?>(3)支持utf-8、gb2312都支持的汉字截取函数 我爱编程网
<?php//同时支持utf-8、gb2312都支持的汉字截取函数,默认编码是utf-8functioncut_str($string,$sublen,$start=0,$code='UTF-8'){if($code=='UTF-8'){$pa="/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xef][\x80-\xbf][\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x80-\xbf]|[\xf1-\xf7][\x80-\xbf][\x80-\xbf][\x80-\xbf]/";preg_match_all($pa,$string,$t_string);if(count($t_string[0])-$start>$sublen)returnjoin('',array_slice($t_string[0],$start,$sublen))."...";returnjoin('',array_slice($t_string[0],$start,$sublen));}else{$start=$start*2;$sublen=$sublen*2;$strlen=strlen($string);$tmpstr='';for($i=0;$i<$strlen;$i++){if($i>=$start&&$i<($start+$sublen)){if(ord(substr($string,$i,1))>129){$tmpstr.=substr($string,$i,2);}else{$tmpstr.=substr($string,$i,1);}}if(ord(substr($string,$i,1))>129)$i++;}if(strlen($tmpstr)<$strlen)$tmpstr.="...";return$tmpstr;}}$str="php点点通提供原创php教程";echocut_str($str,8,0);//php点点通提供...?>我爱编程网(https://www.52biancheng.com)小编还为大家带来求大佬,解决一个php的自定义加密函数的的相关内容。
md5怎么实现javascript中调用java类中的方法实现javascript中调用java类中的方法如下:只要调用addJavascriptInterface方法即可映射一个Java对象到JavaScript对象上。1、映射Java对象到JavaScript对象上代码如下:mWebView=(WebView)findViewById(R.id.wv_content);mW
电脑所有后缀为.rar、.doc、.xls、.jpg、.dwg文件均被添加后缀._CRYPTCRYPT_MD5是UnixlikeShadow密码Ccrypt()crypt是个密码加密函数,它是基於DataEncryptionStandard(DES)演算法。crypt基本上是Onewayencryption,因此它只适用於密码的使用,不适合於资料加密。char*cryp
java如何实现重启docker中运行的java项目java实现重启docker中运行的java项目步骤如下:1、准备一个简单的javaweb程序,打成jar包之后上传到服务器上。2、创建Dockerfile文件3、生成并启动镜像。4、日志查看,利用java查看实时日志。如何使用Docker进行Java开发1、java项目开发,假定已有一个java项目能够编译成j
使用PHP中pathinfo函数讲解pathinfo()是PHP中的内置函数,用于以关联数组或字符串形式提供文件路径信息。调用方式为pathinfo(path,options),返回一个关联数组,包含路径信息。使用pathinfo函数的步骤如下:首先,你需要指定要检查的路径作为参数传递给pathinfo()函数。其次,可选择性地提供一个options参数,规定返回的数组元素
php将特殊字符转为实体的函数,类似空格转化成了 你的数据在插入数据库之前应该是使用了htmlspecialchars来处理,经过这样处理后html标签是不会正常显示的,临时解决方案是在数据输出之前使用htmlspecialchars_decode函数,但为了安全不建议这样做所以如果你想保留html标签信息,数据在插入数据库之前可以使用strip_tags函数来过滤不需要的html标签
PHP中foreach函数用法?在PHP编程语言中,foreach是一种循环结构,用于遍历数组中的元素。foreach的基本语法为:foreach(被foreach的对象(一般是数组)as内容){},例如:$x=array(1,2,3,4,5),然后使用foreach循环,代码如下:foreach($xas$y){//这里的y依次为1,2,3,4,5}这里,$y变量将依次代表数组
PHP中的__construuct()函数中的return的意义?构造函数__construct()是为了构造一个对象实例,在函数中进行return是完全没有意义的,PHP会忽略其中的return语句。因此,带有return的构造函数是不规范的代码,不要去学习。如何实现thinkphp中Db类的方法调用风格?我们先来看下官网对listen的说明:如果开启数据库的调试模式的话,你可以
有没有手机上可以运行java程序的软件?能不能再手机系统运行,取决于这段java代码是什么格式。还有手机是什么系统。比如。如果手机是苹果的。那么就不可以,它的应用是用oc或者swift来写的。如果是微软手机系统的也不行,用C#语言开发。如果是安卓手机,他的应用是java开发的。但是也要遵守一定规范并且制作成apk才可以运行。如果非得要运行一段java代码,也是可以的。就是自己制作一个apk
2025-02-01 20:24:39
2025-02-12 03:21:37
2025-02-10 15:19:48
2025-01-28 17:58:32
2024-11-22 05:08:01
2024-09-10 08:50:00