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
相关推荐
啊阿狸不会拉杆1 小时前
《算法导论》第 24 章 - 单源最短路径
开发语言·数据结构·c++·算法·php
衍余未了1 小时前
Centos9傻瓜式linux部署CRMEB 开源商城系统(PHP)
开发语言·php
Q_Q5110082856 小时前
python的滑雪场雪具租赁服务数据可视化分析系统
spring boot·python·信息可视化·django·flask·node.js·php
春时似衿里7 小时前
解决“Win7共享文件夹其他电脑网络无法发现共享电脑名称”的问题
开发语言·电脑·php
农民也会写代码1 天前
dedecms修改描述description限制字数长度的方法
mysql·php·cms·dedecms
Bruce_Liuxiaowei1 天前
PHP伪协议详解:网络安全中的利用与防御
网络·web安全·php
会飞的胖达喵1 天前
docker network 与host的区别
docker·eureka·php
用户3074596982073 天前
🐶🐱 协变与逆变:用“动物收容所”讲清楚 PHP 类型的“灵活继承”
php
用户3074596982073 天前
🚀 PHP 面向对象四大核心知识点全面详解
php
herderl3 天前
【无标题】命名管道(Named Pipe)是一种在操作系统中用于**进程间通信(IPC)** 的机制
java·linux·服务器·嵌入式硬件·php