«

php字符串函数

时间:2023-3-1 21:54     作者:wen     分类: PHP


<?php

   /*双引号的变量会被解析,
   hreedoc*/
      $str3 = <<<BEGIN
         双引号的变量会被解析,
      BEGIN;
   /*1b = 8b
   1kb = 1024b*/
   echo strlen($str2); // 返回给定的字符串长度
   echo mb_strlen($str2,'utf-8'); //按个数算
   echo implode('分隔符',arr) //将数组转换字符串(限一维数组)
   implode = join
   explode() //把字符串转换成数组

   strtoupper //字符串转大写(限字母)
   strtolower() //转小写
   ucfirst(str) //首字母大写
   ucwords() //每个单词首字母大写

   trim(str) //去除字符串首尾空白或其它字符 
   ltrim(str) //去除左边
   rtrim(str) //去除右边

   htmlentities(string) //将字符转成HTML实体字符
   htmlspecialchars(string) //将&|=|""|<|>转成实体
   addcslashes(str, charlist) //在指定字符前加反斜杠 \n\r\t
   addslashes(str) //在预定的字符前加斜杠 ' " \ NULL

   file_put_contents('log.txt',str) //把后面字符放到前面文件里

   substr_count(haystack, needle) //计算子字符在父字符串出现的次数

   strpos(父串,子串,[偏移0]) //定位字符的位置
   echo strpos($str1,'l',strpos($str1,'l'));

   substr(string,int start,[int length])//在一个字符串中截取一段字符
   echo substr($str1,strpos($str1,'l'),5)

   str_pad(str,新str长度,'填充字符串',位置) //字符填充
   /*STR_PAD_LEFT 左
   STR_PAD_RIGHT 右
   STR_PAD_BOTH 左右*/

   fprintf(res,格式,str); //把一个格式化的字符串输入到一个文件中
   $resData = fopen('logs.txt','r');
   fprintf($resData,'白菜%0.2f一斤','1.98234');
   number_format() //对数组千分位进行格式化

   strchr() //在父串中查找指定字符首次出现的位置到末尾的字符
   $str1 = 'hello world.jpg';
   $str2 = "hello world{$str1}";
   echo $str1.'<hr/>'.$str2;
   echo '<br/>'; 
   echo strstr($str1,'.');
   strrchr() //在父串中查找指定字符最后出现的位置到末尾的字符

   str_ireplace('查找的字符','替换的字符',str) //在字符串中查找指定的字符,用字符去替换
   str_replace //在字符串中查找指定的字符,用字符去替换,区分大小写
   substr_replace(string,替换的字符,start,lenth) //在字符串中查找一段字符,然后用替换字符串替换

   parse_str //把查询字符串解析到变量或数字
      echo parse_str($_SERVER['QUERY_STRING']);
      echo $user.'+++'.$pw
      parse_str($_SERVER['QUERY_STRING'],$arr);
      print_r($arr);
   parse_url //把url地址解析到一个数组中
      $arrData=parse_url($_SERVER['SERVER_NAME'].$_SERVER['QUERY_STRING']);
      print_r($arrData);

   preg_replace //用正则去查找与正则匹配的字符串,然后替换
      echo preg_replace('/\d/','',$str1);
   preg_match //用正则去查找与正则匹配的字符串,然后把匹配字符串放入一个数组中
      preg_match('/[a-z]+(\d+)/',$str3,$arr);
      print_r($arr);
   preg_match_all //用正则去多次查找与正则匹配的字符串,然后把匹配字符串放入一个二维数组中
      preg_match_all('/\d+/',$str3,$arr);
      print_r($arr);
   preg_split //用正则分割与正则匹配的字符串
      $str3 = 'abc123efg456';
      $arr = preg_split('/\d/',$str3);
      print_r($arr);

   md5 //把一个字符串变成一个32位的串,(加密);
      $str3 = 123;
      echo md5($str3);
   sha1 //把一个字符串变成一个40位的串
      $str3 = 123;
      echo sha1($str3);
   hash_hmac //把一个字符串用散列算法计算列值,然后用秘钥加密

   strip_tages //去除HTML PHP 代码标记
   ord //返回字符的ASCII 码值

   /*正则:
   1.元字符 \s \w \d \b ^ % $ []
   2.限定符? * + {}
   3.子表达式 ()
   4.字符集[]*/

   $str1 = 'he2l1l3o world.jpg';
   $str2 = "hello world{$str1}";
   echo $str1.'<hr/>'.$str2;
   echo '<br/>'; 
   echo str_replace('l','w',$str2);
   echo '<hr/>';
   $str3 = 123;
   $key = 'ba123c';
   echo hash_hmac('sha1',$str3,$key);
?>
//加密
function jiami($dada, $key)
{
    return $dada ^ $key;
}

//解密
function jiemi($result, $key)
{
    return $result ^ $key;
}

$key = md5('qwerasfzxcv');
echo $key;
$dada = 'hollo world';
$resu = jiami($dada, $key);
echo $resu;
echo jiemi($resu, $key);
echo substr_replace('hello world', 'y', 0, 1); // 函数把字符串的一部分替换为另一个字符串。

echo str_replace('o', 'w', 'hollo world'); //查找指定字符串替换

echo substr_count('this is a test', 'is', 2);//函数计算子串在字符串中出现的次数。

echo strpos('hello world', 'l'); //查找字符串第一次出现位置

echo stripos('hello world', 'O');//查找字符串第一次出现位置(忽略大小写)

echo strrpos('hello world', 'o');//函数查找字符串在另一字符串中最后一次出现的位置。

echo strstr('123@qq.com', '@');//搜索字符串在另一字符串中的第一次出现。

echo strrev('hello world'); //函数反转字符串

echo strtolower('HELLO WORLD');//转小写

echo strtoupper('hello world');//转大写

echo trim('  hello  ') . '|'; //ltrim | rtrim 清除左右空格

echo addslashes("tom's hello"); //函数返回在预定义字符之前添加反斜杠的字符串。

echo rand(); // 函数返回随机整数。

?>

标签: PHP基础