You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用一行PHP代码同时获取字符串的首尾字符?

PHP 单行获取字符串首尾字符的实现方法

原有代码的问题

你写的代码无法得到预期结果,核心原因有两个:

  • 误用&&逻辑与运算符:逻辑与运算最终只会返回布尔类型结果(true/false),不会保留两个子串的取值
  • 尾字符截取逻辑错误:mb_substr($title, 0, -1, 'UTF8')的作用是截取从字符串开头到倒数第二个字符的全部内容,并非最后一个字符

正确单行实现

兼容UTF-8多字节字符(支持中文等非英文场景)

用数组解构搭配mb_substr即可一行完成取值,不会出现多字节乱码问题:

$title = "IncredibleTitle";
[$firstChar, $lastChar] = [mb_substr($title, 0, 1, 'UTF-8'), mb_substr($title, -1, 1, 'UTF-8')];

执行后$firstChar为首字符I,$lastChar为尾字符e。

仅单字节英文字符场景的简化写法

如果确定处理的是纯英文字符串,可以直接用字符串偏移量访问,写法更简洁:

$title = "IncredibleTitle";
[$firstChar, $lastChar] = [$title[0], $title[strlen($title) - 1]];

注意:该写法不适用于中文等多字节字符,直接用偏移量访问多字节字符串会出现乱码。


内容的提问来源于stack exchange,提问作者Pepe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 01:57:22