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>

@漏刻有时

相关推荐
微学AI9 小时前
一根针指向所有方向:挂谷猜想对 LLM Agent 技能-记忆架构的启示
开发语言·人工智能·架构·挂谷猜想
summerkissyou19879 小时前
Android - 摄像头 - hal - 开发教程,例子,常见问题,分析方法,解决方案
android
豆瓣鸡10 小时前
算法日记 - Day3
java·开发语言·算法
summerkissyou198710 小时前
Android 16 架构图
android
韭菜炒鸡肝天10 小时前
VTK开发笔记(一):VTK介绍,Qt..+VSx+VTK.编译
开发语言·笔记·qt
神龙天舞200110 小时前
MySQL 备库为什么会延迟好几个小时
android·数据库·mysql
Aaron - Wistron11 小时前
Web API C# (Furion版)带 单元测试
开发语言·后端·c#
姜太小白11 小时前
【Linux】df -h 卡住问题的通用排查与解决方案总结
linux·运维·php
Dxy123931021612 小时前
Python项目打包成EXE完整教程(PyInstaller实战避坑)
开发语言·python
05664612 小时前
Python康复训练——常用标准库
开发语言·python·学习