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>

@漏刻有时

相关推荐
生椰拿铁You6 分钟前
解决Apache/2.4.39 (Win64) PHP/7.2.18 Server at localhost Port 80问题
php
小_太_阳20 分钟前
Scala_【2】变量和数据类型
开发语言·后端·scala·intellij-idea
直裾22 分钟前
scala借阅图书保存记录(三)
开发语言·后端·scala
唐 城43 分钟前
curl 放弃对 Hyper Rust HTTP 后端的支持
开发语言·http·rust
_Shirley1 小时前
鸿蒙设置app更新跳转华为市场
android·华为·kotlin·harmonyos·鸿蒙
码银2 小时前
【python】银行客户流失预测预处理部分,独热编码·标签编码·数据离散化处理·数据筛选·数据分割
开发语言·python
从善若水3 小时前
【2024】Merry Christmas!一起用Rust绘制一颗圣诞树吧
开发语言·后端·rust
hedalei3 小时前
RK3576 Android14编译OTA包提示java.lang.UnsupportedClassVersionError问题
android·android14·rk3576
锋风Fengfeng3 小时前
安卓多渠道apk配置不同签名
android
枫_feng3 小时前
AOSP开发环境配置
android·安卓