php实现截取姓名中的第一个字作为头像的实战记录

php 截取中文字符串第一个字

substr 函数

在 PHP 中,使用 substr 函数来截取中文字符串的第一个字。由于 PHP 默认的字符编码是 UTF-8,它可以正确处理中文字符。

php 复制代码
$chineseString = "你好世界";
$firstChar = substr($chineseString, 0, 1);
echo $firstChar; // 输出:你

在上面的代码中,substr 函数接受三个参数:要截取的字符串、起始位置和截取的长度。我们将起始位置设置为 0,表示从字符串的第一个字符开始截取,截取的长度设置为 1,表示只截取一个字符。

请注意,如果中文字符串包含多字节字符(例如汉字),使用 substr 函数是安全的,因为它可以正确处理这些字符。

使用 mbstring 函数

如果在使用 PHP 截取中文字符串第一个字时出现乱码,可能是由于字符编码不一致或不正确导致的。以下是一些可能的解决方案:

  1. 检查字符编码:确保你的 PHP 文件和数据库使用的字符编码是一致的。常见的字符编码包括 UTF-8、GBK 等。你可以在 PHP 文件的开头添加以下代码,以确保使用 UTF-8 编码:
php 复制代码
header('Content-Type: text/html; charset=utf-8');
  1. 数据库连接设置:如果你在使用数据库,确保数据库连接的字符编码与你的应用程序一致。在连接数据库时,可以使用以下代码设置字符编码:
php 复制代码
$mysqli = new mysqli("hostname", "username", "password", "database", "port");
$mysqli->set_charset("utf8"); // 设置字符编码为 UTF-8
  1. 文件编码:检查你的 PHP 文件本身的编码是否正确。你可以使用文本编辑器(如 Notepad++)打开文件并查看文件的编码设置。确保文件的编码与你的应用程序和数据库使用的编码一致。
  2. 确保文本编辑器保存为 UTF-8 编码:如果你在编辑 PHP 文件时使用了文本编辑器,确保在保存文件时使用 UTF-8 编码。大多数现代文本编辑器都支持选择保存为 UTF-8 编码。
  3. 使用 mbstring 函数:PHP 的 mbstring 扩展提供了多字节字符处理的函数,可以帮助你更好地处理中文字符。你可以尝试使用 mb_substr 函数来截取中文字符串的第一个字,例如:
php 复制代码
$chineseString = "你好世界";
$firstChar = mb_substr($chineseString, 0, 1, "UTF-8");
echo $firstChar; // 输出:你

请注意,mbstring 函数的使用可能需要你在 PHP 文件中启用 mbstring 扩展。你可以在 PHP 配置文件(php.ini)中取消注释或添加以下行来启用 mbstring 扩展:

makefile 复制代码
extension=mbstring

HTML呈现

CSS样式表

css 复制代码
.headSculpture {
    width: 100%;
    margin-top: 35px;
    text-align: center;
}

.headSculpture .img {
    width: 100px;
    height: 100px;
    line-height: 98px;
    background-color: #fff;
    border-radius: 50px;
    border: 2px #fff solid;
    margin: 0 auto;
    font-weight: bold;
    font-size: 56px;
    padding-top: -2px;
}

.headSculpture > .depart {
    margin: 0 auto;
    margin-top: 15px;
    font-size: 15px;
    width: 160px;
    height: 30px;
    line-height: 30px;
    background-color: #00B0F0;
    border-radius: 15px;
    color: #fff;
    transform: translate(200px, 0);
   /* transition: all 1s; */
}

.headSculpture > p {
    color: #fff;
    margin-top: 10px;
}

.headSculpture .opacity {
    transform: translate(0, 0);
}

HTML容器

html 复制代码
      <div class="headSculpture">
            <div class="img">阿</div>
            <p class="depart">承德郊区联社</p>
            <p>阿拉丁  <sup class="layui-font-cyan"><i class="layui-icon layui-icon-rate-solid" style="color: #f1f1f1;"></i></sup></p>
        </div>

@漏刻有时

相关推荐
奔跑吧树袋熊2 分钟前
多租户隔离该做到哪一层:从连接池到 ORM 的取舍
开发语言·数据库·oracle·系统架构
大江东去浪淘尽千古风流人物5 分钟前
【LoMa】局部特征匹配重访:从LoMa-B到旋转不变LoMa-R的架构与工程实践
开发语言·深度学习·计算机视觉·r语言·视觉定位·sfm·局部特征匹配
菜鸟~noob2336 分钟前
【电子战】测向精度极限——克拉美-罗下限(CRLB)与误差分析【含matlab代码】
开发语言·matlab
m0_734571767 分钟前
深入理解C++ 析构函数<二>析构顺序
开发语言·c++
T1mzhou16 分钟前
ARM64 Linux 6.10 内核驱动(14):drivers/base/platform.c:板级设备主战场
linux·c语言·开发语言·arm开发
小孩玩什么16 分钟前
深入理解字符串匹配算法:BF算法,KMP算法
java·c语言·开发语言·数据结构·c++·算法
律宏阔21 分钟前
Android WebRTC + H.265 适配记录
android
clz131452127 分钟前
设备反欺诈的四大支柱:从设备指纹到关联图谱
开发语言·php
mmsx28 分钟前
MapLibre 实战 08|GPS 点漂了几百米才被发现:GCJ-02 纠偏原理与"转两次"陷阱
android·前端
春夏与冬28 分钟前
Android : apktool
android