PHP 字符串

PHP 中,一个字符串 string 就是由一系列的字符组成,其中每个字符等同于一个字节。这意味着 PHP 只能支持 256 的字符集,因此不支持 Unicode 。详见字符串类型详解。

注意: 在 32 位版本中,string 最大可以达到 2GB(最多 2147483647 字节)。

语法
一个字符串可以用 4 种方式表达:

  • 单引号
  • 双引号
  • heredoc 语法结构
  • nowdoc 语法结构


单引号
定义一个字符串的最简单的方法是用单引号把它包围起来(字符 ‘)。

要表达一个单引号自身,需在它的前面加个反斜线(\)来转义。要表达一个反斜线自身,则用两个反斜线(\)。其它任何方式的反斜线都会被当成反斜线本身:也就是说如果想使用其它转义序列例如 \r 或者 \n,并不代表任何特殊含义,就单纯是这两个字符本身。

注意: 不像双引号和 heredoc 语法结构,在单引号字符串中的变量和特殊字符的转义序列将不会被替换。

 

双引号
如果字符串是包围在双引号(”)中, PHP 将对以下特殊的字符进行解析:\n、\r、\t、\v、\e、\f、\、\$、\”。
和单引号字符串一样,转义任何其它字符都会导致反斜线被显示出来。

用双引号定义的字符串最重要的特征是变量会被解析,当 PHP 解析器遇到一个美元符号($)时,它会和其它很多解析器一样,去组合尽量多的标识以形成一个合法的变量名。可以用花括号来明确变量名的界线。

常用字符串处理函数

一,字符串截断 trim(),rtrim(),ltrim()

trim() 函数移除字符串两侧的空白字符或其他预定义字符,rtrim — 删除字符串末端的空白字符(或者其他字符),ltrim() 函数移除字符串左侧的空白字符或其他预定义字符。

二,格式化字符串 htmlspecialchars()

htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。语法为:htmlspecialchars(string,quotestyle,character-set).

& 转换成 & 
< 转换成 &lt;
> 转换成 &gt;
" 转换成 &quot;
' 转换成 &apos;

三,字符串连接和分割 explode()、implode()和 join()

explode()示例

// 示例 1
$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2

// 示例 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // *

implode()示例

// implode(array $array): string

$array = ['lastname', 'email', 'phone'];
var_dump(implode(",", $array)); // string(20) "lastname,email,phone"

// Empty string when using an empty array:
var_dump(implode('hello', [])); // string(0) ""

// The separator is optional:
var_dump(implode(['a', 'b', 'c'])); // string(3) "abc"

PHP 7.4.0 在 array 之后传递 separator 已经被废弃

四,获取字符串长度 strlen() 和 mb_strlen()

$a = 'abc';
echo strlen($a); //输出3
echo mb_strlen($a); //输出3

$b = '你好啊';
echo strlen($b); //输出9
echo mb_strlen($b); //输出3

$b = '你好啊abc';
echo strlen($b); //输出12
echo mb_strlen($b); //输出6

五,截取字符串 substr() 和 mb_substr()

substr(string,start,length)

参数 描述
string 必需。规定要返回其中一部分的字符串。

start 必需。规定在字符串的何处开始。
正数 – 在字符串的指定位置开始
负数 – 在从字符串结尾的指定位置开始
0 – 在字符串中的第一个字符处开始

length 可选。规定要返回的字符串长度。默认是直到字符串的结尾。
正数 – 从 start 参数所在的位置返回
负数 – 从字符串末端返回

 

收藏
评论
打赏
PHP语言参考
PHP 常量
2024-05-10
PHP语言参考
PHP 数组
2024-05-10
飞翔的鱼丸
41893 阅读
84 发布
3 收藏
动态
MirageV 主题 2.12.1 发布
BotV 插件 v1.9.0 发布
MirageV 主题 v2.6.4 发布
FishV 主题 v1.14 发布
LandV 企业主题 v2.6.0 发布
MirageV 主题 v2.5 正式发布
BotV 插件 v1.7.0 发布
MirageV 主题 v2.6.0 发布
生成中...
真诚赞赏,手留余香
登录
注册
重置密码