搜尋
首頁後端開發php教程字符串高级处理技术_PHP教程

字符串高级处理技术_PHP教程

Jul 13, 2016 pm 05:46 PM
包含處理多個字母字元字串科技數位構成集合進階

 字符串处理

字符串,所谓的字符串就是由零个或多个字符构成的一个集合,包含:数字,字母,特殊字符和不可见字符。

1.转义,还原字符串
 常有将字符串解释成控制符,针对这样的问题,需要对特殊的字符进行转义。php中通过addslashes()和stripslashes()函数转义和还原字符串。

 addslashes(字符串),可以给字符串加入斜线,对指定字符串中的字符进行转义,可转的包括单双引号,反斜线,null字符。它常用的地方就是生成sql语句时。 还原和转义一样,用stripslashes()函数。

 这两个函数可以对指定范围内容的字符串进行转义,还原。string addcslashes ( string $str , string $charlist )  charlist就是指定哪些字符串前加上反斜线\。

 

2.截取

  对字符串截取sunstr()函数。从字符串中按照指定位置截取一定长度字符。如果使用正数作为子串起点来调用这个函数,将的到从起点字符串结束的这个字符串,如果使用负数作为子串起点来调用,将的到一个从原字符串尾部的一个子串,字符个数等于给定负数的绝对值。

 string substr (string str,int $start [,int $length]) 参数分别是:字符串,截取开始位置,截取位数(截取字符的个数)

 strlen()函数获取字符串的长度。

3.分割,合成字符串
 
 分割是指将字符串中的内容按照某个规则进行分类存储,进而实现更多的功能。字符串的分割使用explode()函数,按照指定的规则对一个字符串进行分割,返回值为数组。
 array explode ( string $separator, string $string [, int $limit] )此函数返回由字符串组成的数组,每个元素都是 string 的一个子串,它们被字符串 separator 作为边界点分割出来。如果设置了 limit 参数,则返回的数组包含最多 limit 个元素,而最后那个元素将包含 string 的剩余部分。
 explode(指定分隔符,被分隔的字符串[包含的元素个数])

 合成字符串,使用implode()函数。语法一样。将数组中的元素组合成一个新字符串。implode(分隔符,被合并的数据);


4.替换字符串

 字符串的替换技术,可以屏蔽帖子或都留言版中的非法字符,可以对查询的关键字进行描红,使用的函数str_ireplace()和substr_replace()来实现字符串的替换功能。

srt_ireplace()函数使用新的子字符串(子串)替换原始字符串中被指定要替换的字符串。
mixed str_ireplace ( mixed $search, mixed $replace, mixed $subject [, int &$count] ) 将所有在参数subject中出现的参数search以参数replace取代。参数&count表示取代字符串执行的次数。

$search   指定需要查找的字符串。 要被替换的
$replace  指定替换的值   替换为的
$subject  指定查找的范围  在哪里替换
count      可选参数,获取执行替换的数量
 

 这个函数不区分大小写,要区分大小写使用srt_replace()

substr_replace()函数,对指定字符串中的部分字符串进行替换。。  参数:指定是哪个字符串,换成什么字符,替换字符串的开始位置,指定长度

 

5.检索字符串,应用于字符串查找的函数,像strstr()函数和substr_count()函数,

 strstr()函数获取一个指定字符串在另一个字符串中首次出现的位置到后者末尾的子字符串。如果指行成功,则返回剩余的字符串,否则返回false。这个函数区分大小写,要不区分大小写,可使用stristr()函数。(第一次出现的位置)
 最后一次出现的位置,用strrchr()函数,该函数区分大小写。strripos()也是查最后出现位置,但不区分大小写。

 substr_count()检索字符串在字符中出现的次数。

6.去掉字符串首尾空格和特殊字符
 trim()函数去除字符串左右两边的空白字符和特殊字符,lrtim()是左边空白字符和特殊字符,rtrim()是右边
 string ltrim (string $str[,string $charlist])   str是要操作的字符串对象。charlist为可选参数,指定需要从指定的字符串中删除哪些字符,如果不设置该参数,则所有的可选字符都将被删除,


7.字符串与html转换
 字符串与html之间转换直接将源代码在网页中输出,而不被执行,用的函数htmlentities(),
 htmlentities ( string $string [, int $quote_style],[string $charset])  $string必要参数,指定要转换的字符串,quote_Style可选参数,选择如何处理字符串中的引号,charest可选参数,确定转换的字符集。


8.正则表达式 : 正则表达式是一种描述字符串结构的语法规则。
 
 
 一个完整的正则表达式由两部分组成,即元字符和文本字符,元字符就是具有特殊含义的字符,文本字符就是普通的文本。PCRE风格的正则表达式一般都放置在定界符/中间。

 php中提供两套正则表达式函数库,但是PCRE函数库在执行效率上要略优于POSIX函数库,所以这里说的是PCRE函数库。

 preg_match()函数,根据正则表达式的模式对指定的字符串进行搜索和匹配。
 preg_match_all()  同上

 preg_grep()函数   对数组中的元素进行匹配

 字符串的替换
 preg_replace()函数和preg_replace_callback()函数完成复杂的字符串替换操作。
 preg_replace()函数 根据正则表达式的模式完成字符串的搜索和替换操作。

 字符串的分割
 preg_split()函数完成复杂的字符串分割操作。

 


作者 “技术为王”

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/478615.htmlTechArticle字符串处理 字符串,所谓的字符串就是由零个或多个字符构成的一个集合,包含:数字,字母,特殊字符和不可见字符。 1.转义,还原字符...
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何使PHP應用程序更快如何使PHP應用程序更快May 12, 2025 am 12:12 AM

tomakephpapplicationsfaster,關注台詞:1)useopcodeCachingLikeLikeLikeLikeLikePachetoStorePreciledScompiledScriptbyTecode.2)MinimimiedAtabaseSqueriSegrieSqueriSegeriSybysequeryCachingandeffeftExting.3)Leveragephp7 leveragephp7 leveragephp7 leveragephpphp7功能forbettercodeefficy.4)

PHP性能優化清單:立即提高速度PHP性能優化清單:立即提高速度May 12, 2025 am 12:07 AM

到ImprovephPapplicationspeed,關注台詞:1)啟用opcodeCachingwithapCutoredUcescriptexecutiontime.2)實現databasequerycachingingusingpdotominiminimizedatabasehits.3)usehttp/2tomultiplexrequlexrequestsandreduceconnection.4 limitesclection.4.4

PHP依賴注入:提高代碼可檢驗性PHP依賴注入:提高代碼可檢驗性May 12, 2025 am 12:03 AM

依赖注入(DI)通过显式传递依赖关系,显著提升了PHP代码的可测试性。1)DI解耦类与具体实现,使测试和维护更灵活。2)三种类型中,构造函数注入明确表达依赖,保持状态一致。3)使用DI容器管理复杂依赖,提升代码质量和开发效率。

PHP性能優化:數據庫查詢優化PHP性能優化:數據庫查詢優化May 12, 2025 am 12:02 AM

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi

簡單指南:帶有PHP腳本的電子郵件發送簡單指南:帶有PHP腳本的電子郵件發送May 12, 2025 am 12:02 AM

phpisusedforsenderemailsduetoitsbuilt-inmail()函數andsupportivelibrariesLikePhpMailerAndSwiftMailer.1)usethemail()functionForbasiceMails,butithasimails.2)butithasimail.2)

PHP性能:識別和修復瓶頸PHP性能:識別和修復瓶頸May 11, 2025 am 12:13 AM

PHP性能瓶颈可以通过以下步骤解决:1)使用Xdebug或Blackfire进行性能分析,找出问题所在;2)优化数据库查询并使用缓存,如APCu;3)使用array_filter等高效函数优化数组操作;4)配置OPcache进行字节码缓存;5)优化前端,如减少HTTP请求和优化图片;6)持续监控和优化性能。通过这些方法,可以显著提升PHP应用的性能。

PHP的依賴注入:快速摘要PHP的依賴注入:快速摘要May 11, 2025 am 12:09 AM

依賴性注射(DI)InphpisadesignPatternthatManages和ReducesClassDeptions,增強量強制性,可驗證性和MATIALWINABIOS.ItallowSpasspassingDepentenciesLikEdenciesLikedAbaseConnectionStoclasseconnectionStoclasseSasasasasareTers,interitationAseTestingEaseTestingEaseTestingEaseTestingEasingAndScalability。

提高PHP性能:緩存策略和技術提高PHP性能:緩存策略和技術May 11, 2025 am 12:08 AM

cachingimprovesphpermenceByStorcyResultSofComputationsorqucrouctationsorquctationsorquickretrieval,reducingServerLoadAndenHancingResponsetimes.feftectivestrategiesinclude:1)opcodecaching,whereStoresCompiledSinmememorytssinmemorytoskipcompliation; 2)datacaching datacachingsingMemccachingmcachingmcachings

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具