服务端(PHP)函数_字符串操作

文档概述

轻语言网站**后端(PHP)**开发中的字符串相关操作函数、基于PHP mbstring扩展处理多语言文本,包含文本分割、连接、大小写转换、MD5加密、文本截取、替换、查找等功能,常用于文本处理、数据格式化、字符串操作等场景,注意使用该类型函数时需开启PHP的'mbstring'扩展。

⚠️ 使用限制说明

  • 本文档内函数仅限在轻语言后端文件 .sph 代码中使用,用于编写服务端逻辑(编译后输出为 PHP 代码在服务器执行)。
  • 不得在编写前端页面 .spl 代码中使用,更禁止与 JS 代码混合使用
  • 编写前端请使用 前端(JavaScript)函数_* 类目下的中文函数;服务端只能使用 服务端(PHP)函数_* 类目下的中文函数。
  • 前后端虽存在同名函数(如 取文本长度到大写到小写分割文本),但底层实现与运行环境完全不同,严禁混用。

💡 PHP 原生英文函数使用说明

  • 轻语言后端支持直接调用 PHP 原生英文函数(如 print_r()mb_strlen()str_repeat()nl2br() 等)。
  • 当遇到轻语言未封装中文函数、但 PHP 原生函数可用时,可直接使用原生英文函数。
  • 仅支持使用原生英文函数名严禁使用 PHP 原生语法格式和英文关键字(如 if(){}for(){}functionclassecho 等控制结构与语法关键字)。
  • 控制结构必须使用轻语言中文关键字:如果...否则...结束 如果变量循环...结束循环函数 ... 结束 函数 等。
  • 注:->(对象方法调用)、=>(数组键值分隔)为轻语言本身支持的语法符号,可正常使用。

PHP 字符串相关特性:

  • 多字节支持取子文本/寻找文本/倒找文本 基于 PHP mb_* 系列,支持中文(UTF-8,一字3字节)
  • 字节 vs 字符取字节子文本/翻转字节/子字节替换字节操作,处理中文可能乱码;取子文本字符操作
  • MD5加密取MD5 对应 PHP md5(),常用于密码哈希
  • 大小写转换到大写/到小写 对应 PHP strtoupper/strtolower
  • 空白处理删首空/删尾空/删首尾空 对应 ltrim/rtrim/trim
  • 分割连接分割文本/数组到文本 对应 explode/implode
  • 扩展依赖:使用多字节函数(含 取子文本 等)需开启 PHP mbstring 扩展

函数:分割文本(分割符,待分割文本)

用指定的分割符分割指定的文本字符串、并返回分割后的数组。

' 使用逗号分割字符串
变量 分割结果 = 分割文本(",", "苹果,香蕉,橙子,葡萄")
输出数组(分割结果)

' 使用空格分割字符串
变量 句子 = "今天 天气 很好"
变量 词语数组 = 分割文本(" ", 句子)
输出数组(词语数组)

函数:数组到文本(分隔符,数组)

返回由数组元素组合成的字符串,注意:不支持多维数组。

' 用逗号连接数组元素
变量 水果数组 = ["苹果", "香蕉", "橙子"]
变量 水果文本 = 数组到文本(",", 水果数组)
输出 水果文本  ' 输出: 苹果,香蕉,橙子

' 用空格连接数组元素
变量 词语数组 = ["今天", "天气", "很好"]
变量 句子 = 数组到文本(" ", 词语数组)
输出 句子  ' 输出: 今天 天气 很好

函数:删首空(文本)

移除字符串左侧的空白字符或其他字符。

' 删除字符串左侧的空格
变量 原文本 = "   左侧有空格的文本"
变量 新文本 = 删首空(原文本)
输出 新文本  ' 输出: "左侧有空格的文本"

函数:删尾空(文本)

移除字符串右侧的空白字符或其他字符。

' 删除字符串右侧的空格
变量 原文本 = "右侧有空格的文本   "
变量 新文本 = 删尾空(原文本)
输出 新文本  ' 输出: "右侧有空格的文本"

函数:删首尾空(文本)

删除字符串左右两边的空白字符或其它字符

' 删除字符串两端的空格
变量 原文本 = "   两端都有空格的文本   "
变量 新文本 = 删首尾空(原文本)
输出 新文本  ' 输出: "两端都有空格的文本"

函数:取MD5(文本)

计算字符串的 MD5 散列。

' 计算字符串的MD5值
变量 密码 = "123456"
变量 MD5密码 = 取MD5(密码)
输出 "原密码: " + 密码
输出 "MD5密码: " + MD5密码

函数:到小写(文本)

把字符串转换为小写字母。

' 将字符串转换为小写
变量 大写文本 = "HELLO WORLD"
变量 小写文本 = 到小写(大写文本)
输出 小写文本  ' 输出: hello world

函数:到大写(文本)

把字符串转换为大写字母。

' 将字符串转换为大写
变量 小写文本 = "hello world"
变量 大写文本 = 到大写(小写文本)
输出 大写文本  ' 输出: HELLO WORLD

函数:取字节子文本(待操作文本,开始位置,长度)

获取并返回指定位置的子字符串,注意:该函数是按 “字节” 裁取指定位置,长度的子字符串,不是按 “字符”,适合操作纯英文字符串。如果处理中文(UTF-8 编码,一个中文占 3 字节),直接截取会乱码,需用‘取子文本’函数或‘mb_substr’(多字节字符串函数)。

' 取指定位置的子字符串
变量 原文本 = "Hello World"
变量 子文本 = 取字节子文本(原文本, 0, 5)
输出 子文本  ' 输出: Hello

函数:翻转字节(待处理文本)

通过字节方式反转指定字符串。

' 反转字符串
变量 原文本 = "abcdef"
变量 反转文本 = 翻转字节(原文本)
输出 反转文本  ' 输出: fedcba

函数:子字节替换(待被替换值,用作替换的值,待搜索的文本)

通过字节方式替换字符串中指定字符为另一个字符(对大小写不敏感)。

' 替换字符串中的文本
变量 原文本 = "我喜欢苹果,苹果很美味"
变量 新文本 = 子字节替换("苹果", "香蕉", 原文本)
输出 新文本  ' 输出: 我喜欢香蕉,香蕉很美味

函数:取文本长度(文本)

返回字符串的长度,若字符串为空则返回0。

' 获取字符串长度
变量 文本 = "Hello World"
变量 长度 = 取文本长度(文本)
输出 "文本长度: " + 长度  ' 输出: 文本长度: 11

变量 空文本 = ""
变量 空长度 = 取文本长度(空文本)
输出 "空文本长度: " + 空长度  ' 输出: 空文本长度: 0

函数:取子文本(待操作文本,开始位置,长度)

按字符长度截取子字符串,获取并返回指定位置的子字符串,注意:使用该函数需开启php的mbstring扩展。

' 取指定位置的子字符串
变量 原文本 = "Hello World"
变量 子文本 = 取子文本(原文本, 0, 5)
输出 子文本  ' 输出: Hello

函数:寻找文本(待搜索文本,待查找文本,开始位置)

查找字符串在另一字符串中第一次出现的位置(大小写不敏感);返回字符串在另一字符串中第一次出现的位置,如果没有找到字符串则返回“假”

' 查找文本在字符串中的位置
变量 主文本 = "Hello World"
变量 查找文本 = "world"
变量 位置 = 寻找文本(主文本, 查找文本, 0)
如果(位置 >= 0)
	输出 "找到了,位置: " + 位置
否则
	输出 "未找到"
结束 如果

函数:倒找文本(待搜索文本,待查找文本,开始位置)

从右向左查找字符串在另一字符串中最后一次出现的位置(对大小写不敏感);返回字符串在另一字符串中最后一次出现的位置,如果没有找到字符串则返回“假”

' 从右向左查找文本最后一次出现的位置
变量 主文本 = "apple banana apple"
变量 查找文本 = "apple"
变量 最后位置 = 倒找文本(主文本, 查找文本, 0)
如果(最后位置 >= 0)
	输出 "最后一次出现的位置: " + 最后位置
否则
	输出 "未找到"
结束 如果

学习要点

知识点代码示例说明
文本分割分割文本(",", 文本)对应 PHP explode;返回数组
数组转文本数组到文本(",", 数组)对应 PHP implode;不支持多维数组
删空白删首空 / 删尾空 / 删首尾空对应 ltrim/rtrim/trim
MD5加密取MD5("123456")对应 PHP md5();常用于密码哈希
大小写转换到大写(文本) / 到小写(文本)对应 strtoupper/strtolower
字节截取取字节子文本(文本, 0, 5)按字节截取;处理中文易乱码,建议改用 取子文本
字符截取取子文本(文本, 0, 5)按字符截取;基于 PHP mb_substr,支持中文
字节翻转翻转字节(文本)按字节翻转字符串;中文慎用
字节替换子字节替换(旧, 新, 文本)按字节替换;大小写不敏感
文本长度取文本长度(文本)对应 PHP strlen;空文本返回 0
查找位置寻找文本(主文本, 查找文本, 起始)基于 mb_strpos;大小写不敏感;找不到返回假
倒找位置倒找文本(主文本, 查找文本, 起始)基于 mb_strrpos;从右向左找最后一次出现
输出函数输出 值 / 输出数组(数组)后端输出到响应体;对应 PHP echo/print_r

相关文档

  • 文档服务端(PHP)函数_数组操作 —— 后端数组操作函数
  • 文档服务端(PHP)函数_编码操作 —— URL编解码、HTML转义等函数
  • 文档服务端(PHP)函数_核心库函数 —— JSON编码JSON解码 等核心函数
  • 文档服务端(PHP)函数_MYSQL操作 —— 数据库字符串字段读写
  • 文档服务端(PHP)函数_数学运算 —— 数值计算与随机数生成
  • 文档轻语言网站:变量与数组与对象的定义 —— 变量、对象、数组的基本语法