设为首页 收藏本站
查看: 517|回复: 0

[经验分享] PHP系列(五)PHP字符串处理

[复制链接]

尚未签到

发表于 2018-12-13 09:17:33 | 显示全部楼层 |阅读模式
php字符串处理

  1、字符串的处理方式(分割匹配找查替换)
  //声明一个关联数组,数组名为$lamp, 成员有4个
  $lamp = array( 'os'=>'Linux','webserver' =>'Apache', 'db'=>'MySQL', 'language'=>'php' );
  //可以解析,双引号中对于数组索引,右方括号(])标志着索引的结束,
  //但是注意:不要在[]中使用引号,否则会在引号处结束
  echo "A OS is $lamp[os].";
  //不能解析,如果在对关联数组下标使用引号就必须使用花括号,否则将出错
  echo "A OS is $lamp['os'].";
  //可以解析,如果在对关联数组下标使用引号就必须使用花括号,否则将出错
  echo "A OS is {$lamp['os']}.";
  echo "A OS is {$lamp[os]}."; //可以解析,注意PHP将数组下标看作常量名,并且常不存在时将常量名称转为了字中,效率低
  echo "This square is $square->widthmeters broad."; //可以解析,对象中的成员也可以解析
  echo "This square is$square->width00 centimeters broad."; //不能解析,可以使用花括号解决
  echo "This square is{$square->width}00 centimeters broad."; //可以解析, 使用花括号解决
  2、常用的字符串输出函数
  Echo() 输出字符串 //echo 指令方式可以打印多个值
  Print() 输出一个字符串  //有返回值、
  区别:
  Print有返回值 、echo没有
  Print不能打印多个值、但echo指令方式可以打印多个值
  Echo “aa”,”bb”,”cc”;
  Die()  exit()输出一条消息、并退出当前脚本
  Printf() 输出格式化字符串
  Sprint()把格式化的字符串写入一个变量中
  Sprint(“%s”, $int);
  %% 返回百分比符号
  %b  二进制数
  %c  依照ASCII值的字符
  %d  带符号的十进制数
  %e   可续计数法(1.5e3)
  %u  无符号十进制数
  %f或%F  浮点数
  %o   八进制数
  %s  字符串
  %x或%X   十六进制数
  3、字符串处理函数
  去除空格和字符串填充函数
  Ltrim(string  str[,string charlist])
  返回值:字符串
  本函数用来删去字符串中的前导空格
  Rtrim(string str[,stringcharlist])
  返回值:字符串
  本函数用来删除字符串的后缀空格
  Trim(string  str[,string charlist])
  返回值:字符串
  截去字符串首尾的空格、本函数返回字符串string 首尾的空白字符去除后的字符串
  //声明一个字符串、其中左侧有三个空格、右侧有二个空格、总长度9个字符
  $str = “  lamp  ”;
  Echo strlen($str);  //输出字符串的总长度为9
  Echo strlen(ltrim($str)) //去掉左侧空格后的长度输出为6
  Echo strlen(rtrim($str))//去掉右侧空格后的长度输出为7
  Echo strlen(trim($str))//去掉二侧空格后的长度输同为4;
  $str = “123 This is a test…”;
  Echo ltrim($str, “0…9”);//过虑掉字符串左侧的数字、输出为This is a test…
  Echo rtrim($str, “.”); //过虑掉字符串右侧所有“.”;输出为:123 Thisis a test
  Echo trim($str, “0..9 A..Z”); //过虑掉字符串二端的数字和大写字母还有“.”
  输出为:his is a test
  Str_pad()按需要对字符串进行填充
  语法:
  String str_pad(string input, int pad_length,STR_PAD_LEFT)
  STR_PAD_LEFT  字符串左添加
  STR_PAD_RIGHT 字符串右添加
STR_PAD_BOTH 字符串二端添加
  $str =”LAMP”;
  Echo str_pad($str, 10);  //指定长度为10、默认空格在右边填补“LAMP”;
  Echo str_pad($str, 10,”---”,STR_PAD_LEFT)//指定长度为10、 指定在左边填补“---lamp”;
  Echo str_pad($str, 10, “--”,STR_PAD_BOTH)//指定长度为10、指定二端填补“---lamp---”
  Echo str_pad($str,6,”--”,STR_PAD_RIGHT);//指定长度为6、默认在右边填补“lamp--”;
  字符串大小写的转换
  Strtolower(string)//将string全部变成小写字符
  Strtoupper(string)//将string全部就成大写字符
  Ucfirst(string)//将字符串第一个字符改大写
  Ucwords(string)//将字符串每个字符第一个字母改大写
  4、和html标签相关联的字符串格式化
  Htmlspecialchars()把预定义的字符"" (大于)转换为 HTML 实体
  Stripslashes()函数删除由addslashes()函数添加的反斜杠
  Addslashes()在每个双引号(")前添加反斜杠
  
  Title:
  
  
  
  Strip_tags()函数剥去字符串中的 HTMLXML 以及 PHP 的标签
  strcmp(string1,string2)比较两个字符串(区分大小写)
  本函数返回:
  0  如果两个字符串相等
  -1  如果 string1 小于 string2
  1   如果 string1 大于 string2
  Strcasecmp(string1,string2)比较两个字符串、不区分大小写(用法同上)
  按自然顺序排序(用法同上)
  Strnatcmp(string1,string2)区分大小写
  Strnatcasecmp(string1,string2)不区分大小写
  一、不用php函数、用方法写一个反转字符串的函数
  $str = "www.bitedy.com";
  function fan($str){
  $n= "";
  $m= strlen($str)-1;
  for($i=$m;$i>0; $i--){
  $n.=$str{$i};
  }
  return $n;
  }
  echo fan($str);
  //echostrrev($str); 返转字符串、显示为:moc.ydetib.www
  二、写一函数将字符串进行三个分组
  $str = "1234567890";
  function nformat($str){
  $n= ""; //临时的变量
  $m= strlen($str);//获取字符串长度
  $k= $m % 3;//让整个长度和3取余之后余数是多少=0
  for($i=0;$i

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-650770-1-1.html 上篇帖子: php之cookie 下篇帖子: PHP 面试题总结
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表