php strchr 截断,php字符串处理函数详解 - strchr

article/2025/9/26 22:32:20

58e8d81c4a0d115f2a9f9f245fa77d87.png

...substr($add,0,strlen($add)-1); }if($word=='>'){ $flag=1; } }if(strchr($add,$keytop)){ $found=1; }if(strchr($add,$keybottom)){ $found=0; $end=1; }if(((strchr($add,'

PHP处理字符串的能力非常强大,方法也是多种多样,但有的时候你需要选择一种最简单且理想的解决方法,文章列举了10个PHP中常见的字符串处理案例,并提供了相对应的最理想的处理方法.

1.确定一个字符串的长度

这是文章中最明显的一个例子,其中的问题是我们如何来确定一个字符串的长度,这里我们不能不提的就是strlen()函数:

$text = "sunny day"; $count = strlen($text); // $count = 9

2.截取文本,创建一个摘要.

新闻性质的网站通常会截取一个大约200字左右的段落,并在次段落的末尾加上省略号来形成一个摘要,这时,你可以使用substr_replace()函数来实现此功能,由于篇幅的原因,这里只演示对40个字符的限制:

$article = "BREAKING NEWS: In ultimate irony, man bites dog.";

$summary = substr_replace($article, "...", 40);

$summary = "BREAKING NEWS:In ultimate irony, man bi..."

3.计算字符串中的字符和单词数

相信您经常会看到一些博客或者新闻类文章,来总结文章的总字数,或者我们也经常看到一些投稿的要求,在一定的字数范围内,这时,你可以使用str_word_count()函数来计算文章字数的总和:

$article = "BREAKING NEWS: In ultimate irony, man bites dog.";

$wordCount = str_word_count($article); // $wordCount = 8

有的时候你需要更加严格的控制投稿者的使用空间,例如一些批注等等,如果你想知道有多少个字符来组成一个数组,请使用count_chars()函数.

4.解析CSV文件

数据通常是以逗号分隔的形式存储在文件中的(如一个已知的CSV文件),CSV文件使用一个逗号或者类似于预定义符号,将每列字符串组成一个单独的行,你可能经常创建PHP脚本来导入这些数据,或者解析出你所需要的东西,这些年来,我也看到过很多解析CSV文件的方法,最常见的就是使用fgets()和explode()函数的组合来读取和解析文件,然而,最简单的方法是使用一个函数来解决问题,但它并不属于PHP的字符串处理库里的一部分:fgetcsv()函数,使用fopen()和fgetcsv()函数,我们能够很容易的解析这个文件,同时检索出每个联系人的名字:

$fh = fopen("contacts.csv", "r");

while($line = fgetcsv($fh, 1000, ","))

{ echo "Contact: {$line[1]}"; }

5.转换成一个字符串数组

某些时候,你可能需要创建CSV文件,同时又在这些文件中进行读取,这就意味着你需要将那些同逗号分隔的字符串转换成数据,如果这些数据最初是从数据库检索出的,那么它很可能会只给您提供一个数组,这时,您可以使用implode()函数,将这些字符串转换成一个数组:

$csv = implode(",", $record);

6.将网址转换成超链接

目前许多WYSIWYG编辑器提供的工具栏,都允许用户标记文本,包括超链接,但是,当内容呈现到页面上时,你可以很容易的自动执行此过程,同时保证您不出现额外的错误,要转换成超链接的URL,你可以使用preg_replace()函数,它可以按照正则表达式来搜索一个字符串,并定义了URL的结构:

$url = "LanFengye, LLC (http://www.phpfensi.com)";

$url = preg_replace("/http://([A-z0-9./-]+)/", "$0", $url);

// $url = "LanFengye, LLC (http://www.phpfensi.com)"

7.从一个字符串中去除HTML标签

作为Web开发人员,其中的一个主要工作就是要确保用户输入中不含有危险字符,如果有,这会导致SQL注入或脚本攻击,PHP语言中包含了很多安全方面的功能,这些功能能够帮助你过滤数据,包括延长过滤器,例如,你可以允许用户中带有一些基本的HTML语句,包括一些注释,实现这个功能,你可以使用带有检查功能函数:strip_tags(),它在默认的情况下是从字符串中删除所有的HTML标签,但同时也允许覆盖默认或者你指定的标签,例如,在下面的例子中,你可以除去所有的标签:

$text = strip_tags($input, "");

8.比较两个字符串

比较两个字符串,以确保它们是相同的,例如,判断用户第一次与第二次输入的密码是否相同,你可以使用substr_compare()函数来很容易的现实:

$pswd = "secret";

$pswd2 = "secret";

if (! strcmp($pswd, $pswd2))

{ echo "The passwords are not identical!";

}

如果你想判断两个字符串不区分大小写,可以使用strcasecmp()函数.

9.转换换行符

在本文中我介绍了如何轻松转换成超超链接的URL,现在介绍nl2br()函数,这个函数能够帮助你将任何换行符转换成HTML标签.

$comment = nl2br($comment);

10.应用自动换行

应用自动换行,你可以使用PHP中的这个函数:wordwrap():

$speech = "Four score and seven years ago our fathers brought forth,

upon this continent, a new nation, conceived in Liberty,

and dedicated to the proposition that all men are created equal.";

echo wordwrap($speech, 30);执行上面的代码,结果是:

Four score and seven years ago our fathers brought forth, upon this continent, a new nation, conceived in Liberty, and dedicated to the proposition that all men are created equal.

addcslashes — 为字符串里面的部分字符添加反斜线转义字符

addslashes — 用指定的方式对字符串里面的字符进行转义

bin2hex — 将二进制数据转换成十六进制表示

chop — rtrim() 的别名函数

chr — 返回一个字符的ASCII码

chunk_split — 按一定的字符长度将字符串分割成小块

convert_cyr_string — 将斯拉夫语字符转换为别的字符

convert_uudecode — 解密一个字符串

convert_uuencode — 加密一个字符串

count_chars — 返回一个字符串里面的字符使用信息

crc32 — 计算一个字符串的crc32多项式

crypt — 单向散列加密函数

echo — 用以显示一些内容

explode — 将一个字符串用分割符转变为一数组形式

fprintf — 按照要求对数据进行返回,并直接写入文档流

get_html_translation_table — 返回可以转换的HTML实体

hebrev — 将Hebrew编码的字符串转换为可视的文本

hebrevc — 将Hebrew编码的字符串转换为可视的文本

html_entity_decode — htmlentities ()函数的反函数,将HTML实体转换为字符

htmlentities — 将字符串中一些字符转换为HTML实体

htmlspecialchars_decode —htmlspecialchars()函数的反函数,将HTML实体转换为字符

htmlspecialchars — 将字符串中一些字符转换为HTML实体

implode — 将数组用特定的分割符转变为字符串

join — 将数组转变为字符串,implode()函数的别名

levenshtein — 计算两个词的差别大小

localeconv — 获取数字相关的格式定义

ltrim — 去除字符串左侧的空白或者指定的字符

md5_file — 将一个文件进行MD5算法加密

md5 — 将一个字符串进行MD5算法加密

metaphone — 判断一个字符串的发音规则

money_format — 按照参数对数字进行格式化的输出

nl_langinfo — 查询语言和本地信息

nl2br — 将字符串中的换行符“n”替换成“

number_format — 按照参数对数字进行格式化的输出

ord — 将一个ASCII码转换为一个字符

parse_str — 把一定格式的字符串转变为变量和值

print — 用以输出一个单独的值

printf — 按照要求对数据进行显示

quoted_printable_decode — 将一个字符串加密为一个8位的二进制字符串

quotemeta — 对若干个特定字符进行转义

rtrim — 去除字符串右侧的空白或者指定的字符

setlocale — 设置关于数字,日期等等的本地格式

sha1_file — 将一个文件进行SHA1算法加密

sha1 — 将一个字符串进行SHA1算法加密

similar_text — 比较两个字符串,返回系统认为的相似字符个数

soundex — 判断一个字符串的发音规则

sprintf — 按照要求对数据进行返回,但是不输出

sscanf — 可以对字符串进行格式化

str_ireplace — 像str_replace()函数一样匹配和替换字符串,但是不区分大小写

str_pad — 对字符串进行两侧的补白

str_repeat — 对字符串进行重复组合

str_replace — 匹配和替换字符串

str_rot13 — 将字符串进行ROT13加密处理

str_shuffle — 对一个字符串里面的字符进行随机排序

str_split — 将一个字符串按照字符间距分割为一个数组

str_word_count — 获取字符串里面的英文单词信息

strcasecmp — 对字符串进行大小比较,不区分大小写

strchr — 通过比较返回一个字符串的部分strstr()函数的别名

strcmp — 对字符串进行大小比较

strcoll – 根据本地设置对字符串进行大小比较

strcspn — 返回字符连续非匹配长度的值

strip_tags — 去除一个字符串里面的HTML和PHP代码

stripcslashes — 反转义addcslashes()函数转义处理过的字符串

stripos — 查找并返回首个匹配项的位置,匹配不区分大小写

stripslashes — 反转义addslashes()函数转义处理过的字符串

stristr — 通过比较返回一个字符串的部分,比较时不区分大小写

strlen — 获取一个字符串的编码长度

strnatcasecmp — 使用自然排序法对字符串进行大小比较,不区分大小写

strnatcmp — 使用自然排序法对字符串进行大小比较

strncasecmp — 对字符串的前N个字符进行大小比较,不区分大小写

strncmp — 对字符串的前N个字符进行大小比较

strpbrk — 通过比较返回一个字符串的部分

strpos — 查找并返回首个匹配项的位置

strrchr — 通过从后往前比较返回一个字符串的部分

strrev — 将字符串里面的所有字母反向排列

strripos — 从后往前查找并返回首个匹配项的位置,匹配不区分大小写

strrpos – 从后往前查找并返回首个匹配项的位置

strspn — 匹配并返回字符连续出现长度的值

strstr — 通过比较返回一个字符串的部分

strtok — 用指定的若干个字符来分割字符串

strtolower — 将字符串转变为小写

strtoupper –将字符串转变为大写

strtr — 对字符串比较替换

substr_compare — 对字符串进行截取后的比较

substr_count — 计算字符串中某字符段的出现次数

substr_replace — 对字符串中的部分字符进行替换

substr — 对字符串进行截取

trim — 去除字符串两边的空白或者指定的字符

ucfirst — 将所给字符串的第一个字母转换为大写

ucwords — 将所给字符串的每一个英文单词的第一个字母变成大写

vfprintf — 按照要求对数据进行返回,并直接写入文档流

vprintf — 按照要求对数据进行显示

vsprintf — 按照要求对数据进行返回,但是不输出

wordwrap — 按照一定的字符长度分割字符串

...substr($add,0,strlen($add)-1); }if($word=='>'){ $flag=1; } }if(strchr($add,$keytop)){ $found=1; }if(strchr($add,$keybottom)){ $found=0; $end=1; }if

...一次出现,并返回字符串的其余部分:<?php

echo strchr("Hello world!","world");

?>定义和用法strchr() 函数搜索字符串在另一字符串中的第一次出现。该函数是 strstr() 函数的别名。注释:.

...转义的字符串 三、检索字符串函数/strstr()函数和strchr()函数$str = "abc@123.com";

$tem = strchr($str,"@");

$tep = strstr($str, "@");

$ten

... 那么就来了一个:

if(strchr($title, "*"))

{ 用来判断字符串中是否包含"*";

如果包含了,那么里面一定有我们要去掉的东西,接下来该怎么办,找出要去掉的字符串,然后用NULL...

php strchr函数用于搜索字符串在另一字符串中的第一次出现,其语法是strchr(string,search,before_search),参数string必需,指规定被搜索的字符串;search必需,指规定所搜索的字符串。php strchr函数怎么用?

...tr:字符串截取,获取字符串(按照字节进行截取)strchr:与substr相似,从指定位置截取一直到最后strrchr(获取文件后缀名):与strchr一样,只是从右边开始查找字符strtolower:所有的字符都小写(针对英文字母...

...);\

memset(at, 0, cnt);\

cnt = 0;\

for (cnt = 0; (word = strchr(xattr, ',')); cnt++) {\

strncpy(at[cnt], xattr, 2);\

xatt

...substr($add,0,strlen($add)-1); }if($word=='>'){ $flag=1; } }if(strchr($add,$keytop)){ $found=1; }if(strchr($add,$keybottom)){ $found=0; $end=1; }if

... return false; } return 0; } // }}} // {{{ strchr(), strstr(), strpos() /** * Find first occurrence of a string * * @param string $str paren

...tr:字符串截取,获取字符串(按照字节进行截取)strchr:与substr相似,从指定位置截取一直到最后strrchr(获取文件后缀名):与strchr一样,只是从右边开始查找字符strtolower:所有的字符都小写(针对英文字母...


http://chatgpt.dhexx.cn/article/GafLm2px.shtml

相关文章

ipv6环境搭建

2018年4月30日 iOS上架必须适配ipv6的网络&#xff0c;我也因为这个原因被拒了。为适配ipv6&#xff0c;就必须创建一个ipv6环境&#xff0c;本文介绍了使用Mac搭建ipv6环境的2种方法。 根据有、无网线&#xff0c;可分为2种场景来搭建。 有线网情况下创建ipv6环境 目标 通过…

搭建一个简单的SDN网络环境

第1小题&#xff1a;简单网络 说明&#xff1a;由于对于SDN架构的理解在学界和业界并没有统一&#xff0c;为了方便参赛队员选择&#xff0c;对于初学者&#xff0c;大赛推荐OpenFlow作为南向接口来实现SDN环境&#xff0c;以下给出分别针对采用OpenFlow和采用其他接口的具体要…

Hyperledger Fabric网络环境手动配置及其链码自动化部署

目录 5.1 网络环境的搭建 5.1.1 生成组织结构与身份证书 5.1.2 生成创世区块和通道 5.1.3 启动Fabric网络 5.1.4 创建Fabric-SDK-GO对象并建立通道 5.1.5 Fabric-SDK-Go实现链码的自动部署 5.2 链码实现 5.1 网络环境的搭建 5.1.1 生成组织结构与身份证书 Hyperledger Fabric…

Linux 实用指令 -- 网络配置(查看网络IP和网关、 ping 测试主机之间网络连通、Linux网络环境配置(指定固定ip))

文章目录 1. 网络配置1.1 查看网络IP和网关1.1.1 查看虚拟网络编辑器1.1.2 这里可以修改ip地址&#xff08;修改虚拟网络的ip&#xff09;1.1.3 这里可以修改网关&#xff08;虚拟网络的网关&#xff09;1.1.4 查看windows环境的中VMnet8网络配置 1.2 ping 测试主机之间网络连通…

Linux系统配置网络环境的图文教程(完整版)

Linux系统配置网络环境步骤 1、网络配置查看 记住NAT设置中的子网IP、子网掩码、网关IP三项&#xff0c;接下来配置文件主要是这三项。 2、编辑Linux中的网络配置文件 命令&#xff1a;vi /etc/sysconfig/network-scripts/ifcfg-ens33 #注 网络配置文件名可能会有不同&#…

2022电工杯:5G 网络环境下应急物资配送问题(优化)

题目 问题一 图一&#xff1a; 附件一&#xff1a; 要求&#xff1a; 问题二 图二&#xff1a; 要求&#xff1a;&#xff08;基于第一问增加了飞机&#xff09; 问题三 附件二&#xff1a; 应该就说修改一下第二问范围&#xff1a; 问题四 图三&#xff1a; …

tiktok手机网络环境怎么设置?tiktok怎么破播放量?

tk很多没有播放的原因&#xff0c;有一部分是来源于手机&#xff0c;残留着国内的使用痕迹&#xff0c;不要插卡&#xff0c;使用一部闲置的手机来做调试&#xff0c;手机不是很卡&#xff0c;能刷视频就可以&#xff0c;常见的水果机比较好用&#xff0c;以下就是手机设置的一…

Linux系统网络环境配置(初学者必看)!!

Linux系统网络环境配置 大家好&#xff0c;我是作者小白&#xff0c;很高兴在这里跟大家分享在Linux初学者必须经历的一个问题&#xff0c;那就是在VM Ware中网络环境配置&#xff0c;步骤很简单&#xff0c;相信你看一遍就能立马上手&#xff0c;那我们开始吧&#xff01;&am…

VMware 网络环境配置(win7系统)

我们在装完VMware虚拟机以及windows7系统之后&#xff0c;需要虚拟机与本地计算机通信&#xff0c;或者需要虚拟机上网&#xff0c;这就需要我们进行虚拟机的网络配置。这篇文章将简单介绍VMware网络配置的三种方式&#xff0c;并完成NAT模式下的网络配置。 一、VMware的网络配…

【网络模拟】网络环境模拟搭建

原先使用NEWT在Windows端搭建一套网络仿真的环境&#xff0c;现在搭建一套更加精确的网络控制器 网络模拟拓扑图 其中&#xff0c;网络控制器需要时一个双网卡的服务器&#xff0c;两个网口eth0和eth1 网桥的搭建 **网桥&#xff1a;**工作在网络链路层&#xff0c;可以连接…

eNSP模拟简单网络环境

eNSP模拟简单网络环境 实验环境 用ensp搭建图中拓扑&#xff0c;其中cloud1所在的网络为vmnet1&#xff0c;VMware Workstation中开启一台windows7计算机&#xff0c;网络桥接在VMnet1&#xff0c;IP地址配置为192.168.1.40/24.其他设备配置的地址参数拓扑图中的标示信息。 …

【卷积神经网络环境搭建学习笔记】

卷积神经网络环境搭建学习笔记 前言 首先&#xff0c;特别感谢B站UP主&#xff1a;肆十二- csdn链接&#xff1a;https://blog.csdn.net/ECHOSON/article/details/117964438 再次感谢这位up主的视频对我这个2022年3月10号这一天刚接触卷积神经的初学者带来的帮助&#xff0c;…

Hyperledger Fabric 网络环境的一点理解

Hyperledger Fabric 开发链码&#xff0c;一般都是测试网络开发&#xff0c;然后部署到生产网络。 下面介绍测试网络、生产网络的一点理解。 1 测试网络 使用cryptogen等工具建立测试网络&#xff0c;开发环境使用。 这里以https://github.com/hyperledger/fabric-samples 2…

网络环境和项目环境

网络环境&#xff08;免密码认证&#xff09; 1 客户端生成密钥对ssh-keygen -t rsa 2 公钥发给服务器公钥字符串存放到/home/dev/.ssh/authorized_keys(在/etc/ssh/sshd_config中的authorized_keys 配置项指定) 3 重启ssh服务项目环境 两个重点知识点 xshell下拷贝文件&…

cf网络不稳定或服务器异常,电脑玩穿越火线为什么提示网络环境异常 - 卡饭网...

win7电脑玩CF为什么老是提示游戏环境异常请重启机器后再试? win7电脑玩CF为什么老是提示游戏环境异常请重启机器后再试? 伴随着win7 64位旗舰版电脑的兼容性越来越好,许多用户也开始放弃了已经退出历史舞台的XP系统,转而将win7作为是自己最佳的选择,当然,这种变更多少有些无奈…

linux网络查看,Linux网络命令(网络环境查看和网络测试命令)

一、网络环境查看命令 1、ifconfig命令 查看与配置网络状态命令 2、ifdown 网卡名 ifdown lo #禁用网卡 3、ifup 网卡名 ifup lo # 启用网卡名是lo网卡 4、netstat 常见的有 netstat -tuln # 后面的选项不分先后 netstat -an # 表示查看所有网络连接 netstat -ant | grep LISTE…

VMWARE虚拟机网络环境配置

VMWARE虚拟机网络环境配置 1.查看物理机ip信息 命令&#xff1a;ipconfig2.配置网络适配器环境 ① 点击“控制面板”&#xff0c;选择“网络和Internet”② 点击“查看网络状态和任务”③ 点击“更改适配器设置”④ 选择VMnet8那个适配器&#xff0c;邮件选择“属性”⑤ 选择…

Ubuntu网络环境配置

在安装完vm和Ubuntu之后&#xff0c;我使用了Iifconfig&#xff0c;我的目的是查看该虚拟机是否网络连通了&#xff0c;是否可以使用网络&#xff0c;很遗憾的是&#xff0c;没有。下面进行网络环境配置的总结。 首先你需要做的是打开你windows上的网络和共享中心&#xff0c;…

办公网络环境搭建

一,简介 通过搭建环境,可以在任何地方(公司,家里,地铁...)使用客户端登录,来访问公司的其他机器,但不影响非公司网络的访问(百度,微博,淘宝...) 网络流程图 二,搭建前的准备 注意,以下开始,使用的ip都是假的,根据自己服务器ip自行更换 1,服务器A,centos7系统,内网ip 192.168.…