PHP基础语法(四)

一、字符串类型

1、字符串定义语法

1)单引号字符串: 在单引号内部,所有的字符都会按照字面意义解释,不会进行变量替换或转义处理,除了 \' 表示单引号本身。

php 复制代码
$str1 = 'Hello, World!';

2)双引号字符串:双引号内部可以包含变量,并会进行变量替换。(保证变量的独立性,可以给变量加一组大括号{})

php 复制代码
$name = "Alice";
$str2 = "Hello, $name!";

1)、2)比较适合定义较短的或无结构要求的字符串

3)、转义字符

在字符串中可以使用反斜杠 \ 进行转义,来表示一些特殊字符:

php 复制代码
$str3 = "This is a \"quoted\" string.";

4)、Heredoc 语法

eredoc 语法允许你定义多行字符串,类似于双引号字符串的行为,但是更适合在多行文本中使用。

上边界符后面不能有任何东西(包括注释)

下边界符必须顶格

下边界符后面只能跟分号,不能跟任何内容

php 复制代码
$str4 = <<<EOT
This is a Heredoc string.
It can span multiple lines.
Variables like $name will be evaluated.
EOT;

<<<EOTEOT; 之间的文本会被视为字符串,EOT 是任意的结束标识符,可以使用其他有效的标识符代替。

5)、 Nowdoc 语法

Nowdoc 语法类似于 Heredoc,但它会将内容作为纯文本处理,不进行变量替换

它使用单引号包裹标识符。

php 复制代码
$str5 = <<<'EOT'
This is a Nowdoc string.
It behaves just like single quoted strings.
Variables like $name are not evaluated.
EOT;

特殊情况处理

跨行字符串 : 如果需要在单引号或双引号中跨行定义字符串,可以使用 \ 连接符来实现。

php 复制代码
$str6 = "This is a very long string \
       that spans multiple lines.";

2、字符串转义

a:\': 单引号。用于在单引号字符串中表示单引号字符。

php 复制代码
$str = 'It\'s raining today.';
echo $str; // 输出:It's raining today.

b、双引号。用于在双引号字符串中表示双引号字符。

php 复制代码
$str = "He said, \"Hello!\"";
echo $str; // 输出:He said, "Hello!"

c、\\: 反斜杠。用于表示反斜杠字符本身。

php 复制代码
$str = "C:\\Windows\\System32\\";
echo $str; // 输出:C:\Windows\System32\

d、\n: 换行符。用于在字符串中表示换行。

php 复制代码
$str = "First line\nSecond line";
echo $str;
/*
输出:
First line
Second line
*/

e、\t: 制表符。用于在字符串中表示水平制表符(Tab)。

php 复制代码
$str = "Name:\tJohn\tDoe";
echo $str; // 输出:Name:    John    Doe

二、字符串相关函数

基本字符串操作

strlen()

  • 返回字符串的长度(字节数)。
php 复制代码
$str = "Hello, world!";
echo strlen($str); // 输出:13

substr()

  • 返回字符串的一部分。
php 复制代码
$str = "Hello, world!";
echo substr($str, 0, 5); // 输出:Hello

str_replace()

  • 替换字符串中的部分内容。
php 复制代码
$str = "Hello, world!";
echo str_replace("world", "PHP", $str); // 输出:Hello, PHP!

strtolower() 和 strtoupper()

  • 将字符串转换为小写或大写。
php 复制代码
$str = "Hello, world!";
echo strtolower($str); // 输出:hello, world!
echo strtoupper($str); // 输出:HELLO, WORLD!

strpos()

  • 查找字符串在另一字符串中第一次出现的位置(区分大小写)。如果没有找到字符串则返回 FALSE。
  • strrpos() - 查找字符串在另一字符串中最后一次出现的位置(区分大小写)

多字节字符串操作(使用 mbstring 扩展)

在php.ini文件中打开mbstring 扩展,之后重启重启Apache服务来应用这些更改

mb_strlen()

  • 返回字符串的长度(字符数)。
php 复制代码
$str = "こんにちは"; // Japanese characters
echo mb_strlen($str); // 输出:5
相关推荐
lskblog5 小时前
PHP中正确处理HTTP响应:从原始响应到JSON数组的完整指南
http·json·php·laravel
万岳软件开发小城8 小时前
2026 在线教育新趋势:网校系统源码正在重塑教育培训平台开发模式
人工智能·php·在线教育系统源码·教育平台搭建·教育app开发·教育软件开发
iCxhust10 小时前
linux /etc 目录 etc是什么缩写
linux·运维·服务器·php
豌豆学姐11 小时前
Sora2 能做什么?25 秒视频生成 API 的一次接入实践
大数据·人工智能·小程序·aigc·php·开源软件
wangxingps15 小时前
phpmyadmin版本对应的各php版本
服务器·开发语言·php
lzjava202415 小时前
LangChain4j RAG检索增强生成
php
豌豆学姐15 小时前
123 口播数字人 API 接入实战:附完整前后端开源项目
大数据·php·uniapp·开源软件
幽络源小助理15 小时前
简约个人发卡系统开源源码已测 – PHP源码
开发语言·php
运维行者_16 小时前
网络流量分析入门:从流量监控与 netflow 看懂核心作用
运维·开发语言·网络·云原生·容器·kubernetes·php
catchadmin17 小时前
成为高级 PHP 开发者需要的思维转变
开发语言·php