博客列表 >字符串与字符串常用函数

字符串与字符串常用函数

王佳祥
王佳祥原创
2020年07月10日 14:52:49733浏览

字符串与字符串常用函数

一、创建与定义字符串的四种方式

1.单引号

  • 单引号中的变量不能被解析
  1. <?php
  2. //字符串大小的上限:2G
  3. //创建/定义一个字符串有几种方式
  4. //1.单引号
  5. $str = 'string';
  6. //单引号中的变量不能被解析
  7. echo '这是一个$str';


  • 可以用.来连接变量
  1. <?php
  2. $str = '字符串';
  3. echo '这是一个'.$str;


  • 单引号中的特殊字符也不能被解析
  1. <?php
  2. $str = '字符串';
  3. echo '这是一个\n\r'.$str;


  • 可以用转义字符’\’来输出特殊字符,\’,\
  1. <?php
  2. $str = '字符串';
  3. echo '这是一个\''.$str.'\'';


2.双引号

  • 双引号可以解析变量
  1. <?php
  2. $str = '字符串';
  3. echo "这是一个$str";


  • 为了开发时更加规范,变量一定要用{}括起来
  1. <?php
  2. $str = '变量';
  3. echo "这是一个{$str}";


  • 双引号可以解析特殊字符
  1. <?php
  2. echo "这是一个\n\r'特殊'字/符/串";




3.heredoc,可以看作是双引号的加强版

  1. <?php
  2. echo <<< HERE
  3. <sapn style="color:red;">html代码,php代码混编</span>
  4. <hr>
  5. echo 'PHP代码';
  6. HERE;


4.nowdoc,单引号加强版

  1. <?php
  2. echo <<< 'NOW'
  3. 这是NOWDOC
  4. 用来输出大量字符串和文本
  5. NOW;


二、打印输出函数

1.printf():将字符串以指定的格式模板输出

  1. <?php
  2. //printf('模板',替换掉模板中的占位符);
  3. printf('这是 %d 个 %s ',1,'字符串');


2.vprintf():与printf功能相同,参数不同

  1. <?php
  2. //vprintf('模板',替换掉模板中的占位符);
  3. vprintf('这是 %d 个 %s ',[1,'字符串']);


3.sprintf():返回格式化字符串,而不是输出

  1. <?php
  2. echo sprintf('这是 %d 个 %s ',1,'字符串');


4.vsprintf():与sprintf()功能相同,参数不同

  1. <?php
  2. echo vsprintf('这是 %d 个 %s ',[1,'字符串']);


三、字符串的分割、查询与替换

1.implode():将数组拼装成一个字符串

  1. <?php
  2. echo implode('——',['苹果','西瓜','猕猴桃','香蕉']);


2.explode():将字符串转换成数组

  1. <?php
  2. print_r(explode(',','姓名,年龄,性别,身高,体重'));


3.list():语言结构,可以把数组中的值赋值给变量

  1. <?php
  2. list($apple,$banane) = ['苹果','香蕉'];
  3. echo $apple,$banane;


4.substr():截取字符串

  1. <?php
  2. //substr($string,$start,$length)
  3. echo substr('string',0),'<br>';
  4. echo substr('string',2),'<br>';
  5. echo substr('string',2,2),'<br>';
  6. echo substr('string',-3,3),'<br>';


5.str_split():把字符串转为数组,可指定数组元素的宽度

  1. <?php
  2. print_r(str_split('string'));
  3. print_r(str_split('字符串',3));


6.file_get_contents():把整个文件读入一个字符串中

  1. <?php
  2. $csvStr = file_get_contents('test.csv');
  3. //把整个文件读入到一个字符串中
  4. $arr = explode("\n",$csvStr);
  5. //把字符串转换为数组
  6. print_r($arr);


7.str_pad():将字符串填充到指定长度、

  1. <?php
  2. echo str_pad('php',10,'=',STR_PAD_RIGHT),'<br>';
  3. echo str_pad('php',10,'=',STR_PAD_LEFT),'<br>';
  4. echo str_pad('php',10,'=',STR_PAD_BOTH),'<br>';


8.str_repeat():把字符串重复指定的次数

  1. <?php
  2. echo str_repeat('/',5);


9.str_replace():用其他字符替换字符串中的一些字符

  1. <?php
  2. echo str_replace('s','S','string',$count),'<br>';
  3. echo 's替换了'.$count.'次';
  4. $search = ['非法','赌博','低俗'];
  5. $symbol = ['**','##','$$'];
  6. echo str_replace($search,$symbol,'非法交易,在线赌博,低俗游戏,低俗直播');


10.trim():从两边删除指定的字符

  1. <?php
  2. $str = '1string1';
  3. echo $str,'<br>';
  4. echo trim($str,'1');
  5. $str1 = '123456789string987654321';
  6. echo $str1,'<br>';
  7. echo trim($str1,'1..7');




11.strpos():查找字符串在另一字符串中第一次出现的位置

  1. <?php
  2. echo strpos('stringr','r'),'<br>';
  3. echo strpos('stringr','r',3),'<br>';


12.strstr():搜索字符串在另一字符串中是否存在,如果是,返回该字符串及剩余部分,否则返回 FALSE

  1. <?php
  2. echo strstr('https://www.php.cn/code/34070.html','.'),'<br>';
  3. echo strstr('https://www.php.cn/code/34070.html','.',true),'<br>';
  4. //如果设置为 "true",它将返回 search 参数第一次出现之前的字符串部分


三、学习总结

1.定义字符串的四种方式

  • 单引号:’string’不会解析变量,特殊字符

  • 双引号:”string”会解析变量和特殊字符

  • heredoc: <<< HERE ‘string’ HERE;适合大量html代码和php代码混编

  • nowdoc: <<< ‘NOW’ ‘string’ NOW;适合大量字符和文本编辑

2.常用的打印输出函数

  • printf():将字符串以指定的格式模板输出

    printf('模板','替换模板占位符的字符');

  • vprintf():以指定模板输出,替换模板占位符的字符为一组数组

    vprintf('模板',['数组元素',...]);

  • sprintf():返回格式化字符串,不是输出

    sprintf('模板','替换模板占用符的字符');

  • vsprintf():返回格式化字符串,替换字符为数组

    vsprintf('模板',['数组元素',...]);

2. 常用的字符串函数

  • implode:将数组拼装成一个字符串

    implode('特殊字符',['数组元素',...]);

  • explode():将字符串转换成数组

    explode('特殊字符','字符串,...');

  • list():语言结构,可以把数组中的值赋值给变量

    list($变量1,$变量2) = ['数组元素1','数组元素2']

  • substr():截取字符串

    subste('字符串',开始截取位置,截取字符串的长度);

  • str_split():把字符串转为数组,可指定数组元素的宽度

    str_split('字符串',数组元素宽度);

  • file_get_contents():把整个文件读入一个字符串中

    $变量 = file_get_contents(test.csv);

  • str_pad():将字符串填充到指定长度

    str_pad('字符串',指定长度,'填充字符',填充常量)

  • str_repeat():把字符串重复指定的次数

    str_repeat('特殊字符',重复次数);

  • str_replace():用其他字符替换字符串中的一些字符

    str_replace('查找字符','替换字符','字符串',替换次数);

  • trim():从两边删除指定的字符

    trim('字符串','指定删除的字符');

  • strpos():查找字符串在另一字符串中第一次出现的位置

    strpos('字符串','要查找的字符');

  • strstr():搜索字符串在另一字符串中是否存在,如果是,返回该字符串及剩余部分,否则返回 FALSE

    strstr('字符串','要搜索的字符');

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议