PHP 字符串常用函数

news2024/11/24 9:19:10

PHP 字符串常用函数

    • 字符串属性
      • strlen
    • 筛选查找
      • strpos
      • strrpos
      • strstr
      • strrchr
      • 查找方法之间区别总结
    • 拼接,拆分字符串
      • explode
      • strtok
      • implode
      • substr
    • 替换字符串
      • str_replace
    • 格式化字符串
      • trim
      • ltrim
      • rtrim

字符串属性

strlen

获取指定字符串长度

语法:

strlen (字符串变量);

筛选查找

strpos

用于查找指定字符串,在源字符串首次出现的位置(下标),如果没找到则返回false
注:大小写不敏感

语法:

strpos (源字符串,查找字符串);

strrpos

用于查找指定字符串,在源字符串最后出现的位置(下标),如果没找到则返回false
注:大小写不敏感

语法:

strrpos (源字符串,查找字符串);

strstr

用于查找指定字符串,在源字符串首次出现的位置,并且返回指定字符串后剩余的字符串,如果没找到则返回false别名方法:strchr()
注:大小写敏感

语法:

strpos (源字符串,查找字符串);

strrchr

用于查找指定字符串,在源字符串最后出现的位置,并且返回指定字符串后剩余的字符串,如果没找到则返回false

查找方法之间区别总结

 查找方法之间区别总结

拼接,拆分字符串

explode

将一个字符串根据另一个字符串拆分,结果为数组

语法:

explode(分隔符,源字符串)

strtok

将一个字符串根据另一个字符串首次拆分,结果为字符串
语法:

strtok(源字符串,拆分符)/**
*以下代码,将输出:  Hello<br>world.<br>Beautiful<br>day<br>today.<br>
*/
$string = "Hello world. Beautiful day today.";
$token = strtok($string, " ");
 
while ($token != false)  {
    echo "$token<br>";
    $token = strtok(" ");
}

implode

将一个数组里的元素使用指定字符串拼接起来, 返回拼接后字符串,别名方法:join
语法:

implode(拼接符,源数组)

substr

截取字符串中的一段字符串
语法:

substr(源字符串,开始截取下标[,截取长度])

注: 截取长度为空或为负数, 则表示为截取到源字符串末尾

替换字符串

str_replace

搜索源字符串,并替换字符串,此函数大小写敏感
语法:

str_replace(查找字符串,替换字符串,源字符串[,记录替换次数])

注: 记录替换次数参数 是PHP 5.0才出现的
示例: 将Hello world中的world 替换为 Peter

<?php
echo str_replace("world","Peter","Hello world!");
?>

当此函数作用于数组时:

  • 如果源字符串是一个数组, 那么它将对数组中的每个元素进行查找和替换, 并返回一个数组。
    示例:
print_r(str_replace('apple', 'Apple', array("apple", "orange", "banana", "grape")));

运行结果:
在这里插入图片描述

  • 如果同时需要对某个数组进行查找和替换,并且需要执行替换的元素少于查找到的元素的数量,那么多余的元素将用空字符串进行替换
    示例:
$search = array("apple", "banana", "orange");
$replace = array("Apple", "Banana");
$input = array("apple", "orange", "banana", "grape");

$output = str_replace($search, $replace, $input);


print_r($output);

运行结果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/a5c4f53831774277b621e5eb003c9aae.png

  • 如果是对一个数组进行查找,但只对一个字符串进行替换,那么替代字符串将对所有查找到的值起作用。
    示例:
$search = array("apple", "banana", "orange");
$input = array("apple", "orange", "banana", "grape");

$output = str_replace($search, 'Apple', $input);

print_r($output);

运行结果:
在这里插入图片描述

格式化字符串

trim

去除字符串前后空字符串, 或其他定义字符
语法:

trim(源字符串[,去除字符串])

去除字符串未填写 , 默认空字符串
空字符串包括: 在这里插入图片描述

$str = "Hello World!";
echo $str . "<br>";
echo trim($str,"Hed!");

运行结果:
在这里插入图片描述

ltrim

去除字符串左边空字符串, 或其他定义字符
语法:

ltrim(源字符串[,去除字符串])

其他特性, 与trim一致, 这里省略 , 可参照trim

rtrim

去除字符串右边空字符串, 或其他定义字符
语法:

rtrim(源字符串[,去除字符串])

其他特性, 与trim一致, 这里省略 , 可参照trim

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1163200.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Transformer的Q、K、V和Mutil-Head Self-Attention(超详细解读)

目录 一.什么是Q、K、V 二.Mutil-Head Self-Attention Transformer大行其道&#xff0c;在众多领域取得了不可忽视的成就。如今大火的语言大模型LLM也都是基于Transformer&#xff0c;但是Transformer中的Q、K、V和多头注意力到底是什么呢&#xff1f;这里简单做个学习记录&a…

实景三维信创产品与智能硬件重磅发布 | 大势智慧2023秋季新品发布会圆满落幕

10月27日&#xff0c;大势智慧2023秋季新品发布会取得圆满成功。本次发布会以“全国产、真安全”为主题&#xff0c;重磅发布了一系列国产化软硬件产品和新型智能装备&#xff0c;用于满足实景三维全流程的安全生产和应用需求。大会同步在官方微信视频号、bilibili直播间进行线…

如何记录每天的工作日程?电脑手机通用的日程管理软件

在工作时间有限&#xff0c;但工作任务愈加繁多的现在职场中&#xff0c;要求每一个职场人士做好高效日程管理。通过高效管理日程&#xff0c;我们可以更好地组织和安排任务&#xff0c;合理分配时间和优先级&#xff0c;这有助于我们更专注地进行工作&#xff0c;减少时间的浪…

分析报告有样板了-奥威BI数据可视化报表模板

述职报告、月度数据分析报告、季度数据分析报告、区域数据分析报告……人在职场&#xff0c;数据分析报告少不了。那么&#xff0c;怎么才能在极短的时间内做出一张既好看又突出重点、分析逻辑在线的数据可视化分析报表&#xff1f;奥威BI软件的建议是采用BI数据可视化报表模板…

批量调整图片尺寸方案(比例不变)

最近又有一个问题,需要把一堆图片调整成统一的尺寸大小(例如100*100像素)。 网上或者很多工具都是直接把图片尺寸调整到对应尺寸。 这就出现了一个问题—— 整个图片会被压缩拉伸,图片里的物体/人等都变形了。 原图(200*270): 直接调整尺寸后(200*200): 我们需…

Zabbix监控原理 安装

一、监控介绍 1、监控目的 监控是需要站在公司的业务角度去考虑&#xff0c;而不是针对某个监控技术的使用 对系统不间断时实监控 实际上是对系统不间断的时实监控 实时反馈系统当前状态 我们监控某个硬件、或者系统&#xff0c;都是需要能时实看到当前系统的状态&#x…

创作者焦点:MetaLab 和 Hangar Games(第一章)

一起来看看「Dr. Bomkus 的试炼」幕后的创作故事吧&#xff5e; 「创作者焦点」系列报道将带来六篇关于「Dr. Bomkus 的试炼」游戏的创作过程&#xff0c;以及其独特的游戏玩法和功能。请关注我们&#xff0c;查看更多系列内容的发布。 The Dr. Bomkus MetaLab Dr. Bomkus Meta…

基于Springboot+MYSQL+Maven实现的宠物医院管理系统(源码+数据库+运行指导文档+项目运行指导视频)

一、项目简介 本项目是一套基于springboot框架实现的宠物医院管理系统 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目附带全部源码可作为毕设使用。 项目都经过严格调试&#xff0c;eclipse或者idea 确保可以运行&#xff01; 该系统功能完善、界面美观、操作简单…

前端基础之BOM和DOM

目录 一、前戏 window对象 window的子对象 navigator对象&#xff08;了解即可&#xff09; screen对象&#xff08;了解即可&#xff09; history对象&#xff08;了解即可&#xff09; location对象 弹出框 计时相关 二、DOM HTML DOM 树 查找标签 直接查找 间…

使用Qt Installer Framework将自己的程序打包成安装包程序

使用Qt Installer Framework将自己的程序打包成安装包程序 制作安装包程序就是将自己的程序打包成一个可执行的exe&#xff0c;双击之后进行安装。 1. 在制作安装包程序之前需要安装qt官方提供的安装包制作工具Qt Installer Framework 去qt官方网址&#xff0c;下载对应的 Q…

gorm的自动化工具gen

gorm的自动化工具gen 官方 https://gorm.io/zh_CN/gen/假设数据库结构如 这里使用gen-tool 安装 go install gorm.io/gen/tools/gentoollatest用法 gentool -hUsage of gentool:-c string配置文件名、默认值 “”、命令行选项的优先级高于配置文件。 -db string指定Driver…

大语言模型对齐技术 最新论文及源码合集(外部对齐、内部对齐、可解释性)

大语言模型对齐(Large Language Model Alignment)是利用大规模预训练语言模型来理解它们内部的语义表示和计算过程的研究领域。主要目的是避免大语言模型可见的或可预见的风险&#xff0c;比如固有存在的幻觉问题、生成不符合人类期望的文本、容易被用来执行恶意行为等。 从必…

【机器学习】四、计算学习理论

1 基础知识 计算学习理论&#xff08;computational learning theory&#xff09;&#xff1a;关于通过“计算”来进行“学习”的理论&#xff0c;即关于机器学习的理论基础&#xff0c;其目的是分析学习任务的困难本质&#xff0c;为学习算法体统理论保证&#xff0c;并根据结…

2023年11月2日历史上的今天大事件早读

1082年11月02日宋徽宗出生 1861年11月02日辛酉政变 1910年11月02日中国社会学家和人类学家费孝通诞生 1910年11月02日畜生态学科的创始人汤逸人诞生 1917年11月02日《贝尔福宣言》和犹太复国主义 1917年11月02日美日订立“兰辛—石井协定”损害中国利益 1937年11月02日忻…

数据结构之二叉树(图解➕源代码)

前言 哈喽&#xff0c;大家好&#xff0c;这里是面包园的知识分享&#xff0c;在上一篇文章中我们学习了树的相关概念&#xff0c;了解了树形结构&#xff0c;那今天让我们进一步学习树的特殊结构——二叉树。 一、什么是二叉树&#xff1f; 二叉树的概念&#xff1a;根节点…

优维产品最佳实践第13期:如何避免拨测机自身网络问题?

受限于拨测节点自身的环境&#xff0c;单一节点的拨测结果可能并不能反映出监控实例的真实运行状态 本期EasyOps产品使用最佳实践&#xff0c;我们将为您揭晓&#xff1a; 如何基于多点决策配置拨测监控&#xff0c;以避免拨测机自身网络问题而误告警&#xff1f; 如何对指标…

GDS-enabled BeeGFS 人工智能并行存储解决方案

项目背景 HPC 和 AI 的融合正在颠覆一切。在这样的新时代&#xff0c;企业需要全新的存储解决方案&#xff0c;才能以高效且经济的方式从容应对来势汹汹的数据洪流。独立分析公司 Intersect360 开展的一项研究发现&#xff0c;多达 66% 的 HPC 用户目前已在执行机器学习计划。…

写一个方法实现数组元素每两个元素加一个换行,并进行文件导出

文章目录 需求分析 需求 源数据&#xff1a; 输出的数据如下&#xff1a; 分析 我们可以手写一个方法&#xff0c;方法如下&#xff1a; transformArray(arr) {var result ;for (var i 0; i < arr.length; i 2) {result arr[i] , arr[i 1];if (i 2 < arr.le…

【Kubernetes】初识k8s--扫盲阶段

文章目录 1、k8s概述2、为什么要有k8s2.1 回顾以往的应用部署方式2.2 容器具有的优势 3、k8s能带来什么 1、k8s概述 kubernetes是一个可移植、可扩展的开源平台&#xff0c;用于管理 容器化 的工作负载和服务&#xff0c;可促进申明式配置和自动化。kubernetes拥有一个庞大且快…

AutoSAR的UB位

AutoSAR的UB位 作用 在AUTOSAR&#xff08;汽车开放系统架构&#xff09;中&#xff0c;UB位&#xff08;Update Bit&#xff09;起着非常关键的作用。它主要用于指示某个信号或信号组的数据是否已被更新。以下是UB位的几个主要功能和应用情景&#xff1a; 信号更新指示&…