php 字符串常用的函数

1、字符串长度函数 strlen()


   $str  = '你好';
   echo '字符串长度 = '.strlen($str).'</br>'; 
     
   /*
     如果是strlen()计算的是utf-8编码的字符串,其中的单个中文字的的长度会被计算成3
  mb_strlen()就可以解决这个问题,因为它可以指定字符串的编码形式
   */
   
 2、mb_strlen()


   echo 'mb_strlength = '.mb_strlen($str, 'gb2312').'</br>';
     
   //截取指定长度的字符串,从0开始计数,从第一个字符开始,取长度为4  ==  bcde
   $str1 = 'abcdef';
   echo 'designedLength = '.substr($str1,1,4).'<br/>';
   
  
3、strpos 搜索指定的字符串
   /*
   strpos(string,find,start)参数 描述
           string 必需。规定被搜索的字符串。
           find 必需。规定要查找的字符。
     start 可选。规定开始搜索的位置。

   */
   echo strpos("Hello world!","wo",0);

   
   /*
        以上三个函数的 输出结果:
        字符串长度 = 6
        mb_strlength = 4
        designedLength = bcde
   */

4、 str_replace(find,replace,string,count)参数 描述


find 必需。规定要查找的值。
replace 必需。规定替换 find 中的值的值。
string 必需。规定被搜索的字符串。
count 可选。一个变量,对替换数进行计数。
注释:该函数对大小写敏感。请使用 str_ireplace() 执行对大小写不敏感的搜索。

注释:该函数是二进制安全的。*/


echo str_replace("world","John","Hello world!");  //Hello John

//extension:

在本例中,我们将演示带有数组和 count 变量的 str_replace() 函数:

<?php
$arr = array("blue","red","green","yellow");
print_r(str_replace("red","pink",$arr,$i));
echo "Replacements: $i";
?>

输出:

Array
(
[0] => blue
[1] => pink
[2] => green
[3] => yellow
)
Replacements: 1

 

5、转换字符串为数组:

explod(string separator, string string,[, int limit])  如果设置了limit参数,则返回的数组包含最多limit个元素,而最后的那个元素将包含string的剩余部分

print_r(explode( ' ,' , 'hello,world') );

//输出结果:

Array ( [0] => hello [1] => world )

 

6、将数组转换为字符串

implode(string glue, array pieces)   -->  glue 为合并数组元素成字符串时所用的连接符,pieces 为需要合并的数组

     $arr = array('blue','red','yellow'); // 初始化数组 
     echo (implode (',',$arr))// 输出结果:blue,red,yellow

 

7、设置字符编码:(用于编码转换,处理乱码问题)

string iconv(string in_charset, string out_charset , string str)

例子:

  echo strlen('你好');//    6             utf-8编码  每个中文占三个字节
  $strencode  = iconv("utf-8","GB2312","你好");

  echo strlen($strencode); // 4          转换为gb2312之后,每个中文占两个字节 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值