PHP入門教程之字串處理技巧總結(轉換,過濾,解析,查找,截取,替換等)
本文实例总结了PHP字符串处理技巧。分享给大家供大家参考,具体如下:
Demo1.php
<?php //源代码是文本形式,页面显示是 web 形式 $str = ' PHP '; //清理一下两边的空格 ltrim 只清理左,rtrim只清理右边 echo ltrim($str); echo '<br/>'; echo rtrim($str); echo '<br/>'; //两边都清理 echo trim($str); //echo chop($str); ?>
Demo2.php
<?php $str = "This is 一站式建网站 \n This is a OneStopWeb"; //但是,我现在想要在网页中实现换行 //在回帖的时候,一个回车就是 \n //我们通过函数来实现转换过程 echo nl2br($str); ?>
Demo3.php
<?php //将所有字符转换成 HTML $str = '<strong>阅谁问君诵,水落清香浮。</strong>'; //echo htmlentities($str); //我们只要转换特殊字符即可 //echo htmlspecialchars($str);//<strong>阅谁问君诵,水落清香浮。</strong> echo strip_tags($str); //阅谁问君诵,水落清香浮。 ?>
Demo4.php
<?php $str = 'This is "一站式建网站" \n This is a OneStopWeb'; //对于即将插入数据库的字符串,把有问题的字符处理一下 //echo addslashes($str); //This is \"一站式建网站\" \\n This is a OneStopWeb $a = addslashes($str); //这个 $a 就是写入数据库的,我拿出来的话,就会有 \ 这个符号 echo stripcslashes($a); //首先将写进数据库的字符串通过 addslashes() 函数过滤一下,然后拿出来的时候 //再通过 stripcslashes() 解析一下显示 ?>
Demo5.php
<?php //将字符串转换成大写 echo strtoupper('oneStopWeb');//ONESTOPWEB //将字符串转换成小写 echo strtolower('oneStopWeb');//onestopweb //将第一个字母转换成大写 echo ucfirst('oneStopWeb'); //OneStopWeb ?>
Demo6.php
<?php $str = 'oneStopWeb'; //echo str_pad($str,11).'is good!'; //oneStopWeb is good! //oneStopWeb### //echo str_pad($str,13,'#') echo str_pad($str,18,'#',STR_PAD_BOTH); echo '<br/>'; echo str_pad($str,18,'#',STR_PAD_LEFT); echo '<br/>'; echo str_pad($str,18,'#',STR_PAD_RIGHT); /** * ####oneStopWeb#### * ########oneStopWeb * oneStopWeb######## * */ ?>
Demo7.php
<?php //explode -- 使用一个字符串分割另一个字符串 //返回的是一个数组 //explode 第一参数是分割字符串,第二个参数是要被分割的字符串 $email = explode('@','oneStopWeb@163.com'); //print_r($email); //Array ( [0] => oneStopWeb [1] => 163.com ) //分割完了之后,我经过一轮筛选,还要重新组合 // $arr = array('oneStop','@','163.com'); // $str = implode('&',$arr); // echo $str;//oneStop&@&163.com $str = implode(' - ',$email); echo $str; //oneStopWeb - 163.com ?>
Demo8.php
<?php // $str = 'I will be back'; // $arr = explode(' ',$str); // print_r($arr); //Array ( [0] => I [1] => will [2] => be [3] => back ) $str = 'I,will.be#back'; $tok = strtok($str,',.#'); //echo $tok; while($tok){ echo $tok.'<br/>'; $tok = strtok(',.#'); } // $str = 'I will be back'; // $tok = strtok($str,' '); // //echo $tok; // while($tok){ // echo $tok.'<br/>'; // $tok = strtok(' '); // } // $tok = strtok(' '); // echo $tok;//Iwill // //指针没有下移,而是重新来了一次 // $tok = strtok($str,' '); // echo $tok; ?>
Demo9.php
<?php $str = 'oneStopWeb@163.com'; //中间的参数表示开始的位置,位置是从 0 开始的,最后一个参数,是取出的个数 echo substr($str,0,5) ;//oneSt ?>
Demo10.php
<?php //$str = 'oneStopWeb@163.com'; $str = '阅谁问君诵,水落清香浮。'; //中文乱码 print_r(str_split($str)); ?>
Demo11.php
<?php $str = 'oneStopWeb@163.com'; echo strrev($str); //moc.361@beWpotSeno ?>
Demo12.php
<?php //通过 == 来比较字符串是否一致 //最后的返回值是布尔值 //echo 'a' == 'a'; //比较两个字符串 //echo strcmp('a','b'); // if(strcmp('a','a') == 0){ // echo '相等'; // } //echo strcasecmp('B','b'); //不区别大小写 //目前是非自然排序 //echo strcmp('2','10');//1 //如果按照自然排序方式比较呢? echo strnatcmp('2','10');//-1 ?>
Demo13.php
<?php //strspn //后面两个数字的参数,是从第几位开始,取多少位 echo strspn('one','oneStopWeb@163.com',1,5); ?>
Demo14.php
<?php //测试字符串的长度 echo strlen('oneStopWeb@163.com') ; ?>
Demo15.php
<?php //测试字符串出现的频率 echo substr_count('oneStopWeb@163.com','o'); ?>
Demo16.php
<?php //从指定的字符串开始输出之后的字符串 echo strstr('oneStopWeb@163.com','@'); //不区别大小写的 echo stristr('oneStopWeb@163.com','s'); ?>
Demo17.php
<?php //查找某字符串最先出现的位置 //位置是从第 0 个位置开始计算,W第一次出现在第 7 个位置上 echo strpos('oneStopWeb@163.com','W'); //最后出现的位置 echo strrpos('oneStopWeb@163.com','o'); ?>
Demo18.php
<?php //字符串替换 //第一个参数表示要查找的字符串(部分) //第二个参数表示要替换成的字符串(部分) //第三个参数表示原来的被替换的完整字符串 //echo str_replace('one','yi','oneStopWeb@163.com');//yiStopWeb@163.com //str_ireplace 是不区分大小写 //echo str_ireplace('oNe','yi','oneStopWeb@163.com');//yiStopWeb@163.com //从第一个位置开始(参数3),取出 5 个来(参数4),将它替换成 ###(参数2) echo substr_replace('oneStopWeb@163.com','###',0,5); ?>
Demo19.php
<?php //取中文长度 $str = '阅谁问君诵,水落清香浮。'; //用普通的 strlen 取一个中文字,就算两个 //echo strlen($str) ; //使用 mb_strlen 来取中文,有第二个参数,字符编码 echo mb_strlen($str,'GBK');//12 //如果你使用普通的 strlen 这个函数,我取 1 个字符 //采用 mb_substr 来取中文字符 echo mb_substr($str,2,1,'GBK');//问 ?>
Demo20.php
<?php $str = '阅谁问君诵,水落清香浮。'; //求出 o 最先出现的位置 //中文的算法,两个字符一个中文字 //mb 就算一个 //echo strpos($str,'问');//4 //按中文一个字符来计算,这样不会出现半个中文的状态 echo mb_strpos($str,'问',0,'GBK'); ?>
Demo21.php
<?php // $str = '阅谁问君诵,水落清香浮。' ; // echo mb_substr($str,0,1,'GBK'); $str ='阅谁问君诵,水落清香浮。'; //这个就无所谓用 mb_strstr echo strstr($str,'水'); ?>
Demo22.php
<?php $str ='阅谁问君诵,水落清香浮。'; echo mb_substr_count($str,'问','GBK'); ?>
希望本文所述对大家PHP程序设计有所帮助。
更多PHP入门教程之字符串处理技巧总结(转换,过滤,解析,查找,截取,替换等)相关文章请关注PHP中文网!

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

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

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

會話劫持可以通過以下步驟實現:1.獲取會話ID,2.使用會話ID,3.保持會話活躍。在PHP中防範會話劫持的方法包括:1.使用session_regenerate_id()函數重新生成會話ID,2.通過數據庫存儲會話數據,3.確保所有會話數據通過HTTPS傳輸。

PHP8.1中的枚舉功能通過定義命名常量增強了代碼的清晰度和類型安全性。 1)枚舉可以是整數、字符串或對象,提高了代碼可讀性和類型安全性。 2)枚舉基於類,支持面向對象特性,如遍歷和反射。 3)枚舉可用於比較和賦值,確保類型安全。 4)枚舉支持添加方法,實現複雜邏輯。 5)嚴格類型檢查和錯誤處理可避免常見錯誤。 6)枚舉減少魔法值,提升可維護性,但需注意性能優化。

SOLID原則在PHP開發中的應用包括:1.單一職責原則(SRP):每個類只負責一個功能。 2.開閉原則(OCP):通過擴展而非修改實現變化。 3.里氏替換原則(LSP):子類可替換基類而不影響程序正確性。 4.接口隔離原則(ISP):使用細粒度接口避免依賴不使用的方法。 5.依賴倒置原則(DIP):高低層次模塊都依賴於抽象,通過依賴注入實現。

在PHPStorm中如何進行CLI模式的調試?在使用PHPStorm進行開發時,有時我們需要在命令行界面(CLI)模式下調試PHP�...

使用PHP的cURL庫發送JSON數據在PHP開發中,經常需要與外部API進行交互,其中一種常見的方式是使用cURL庫發送POST�...

如何在系統重啟後自動設置unixsocket的權限每次系統重啟後,我們都需要執行以下命令來修改unixsocket的權限:sudo...
