成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

關(guān)于php trim方法的錯(cuò)誤理解導(dǎo)致的問題

Forest10 / 1776人閱讀

摘要:場(chǎng)景中的截取字符串前后字符包括有三個(gè)方法下面的例子中只以方法做舉例在我之前的認(rèn)知中當(dāng)然我很水,從沒看過這塊源碼,如果我想要?jiǎng)h除字符串左邊的空字符串,空制表符之類的,那么我就直接使用即可如果我想要?jiǎng)h除指定字符的時(shí)候,比如說現(xiàn)在有個(gè)字符串,我要

場(chǎng)景

php中的截取字符串前后字符包括有:ltrim,rtrim,trim三個(gè)方法

下面的例子中只以ltrim方法做舉例
在我之前的認(rèn)知中(當(dāng)然我很水,從沒看過這塊源碼),如果我想要?jiǎng)h除字符串左邊的空字符串,空制表符之類的,那么我就直接使用ltrim($str)即可

如果我想要?jiǎng)h除指定字符的時(shí)候,比如說現(xiàn)在有個(gè)字符串helloworld,我要截取掉頭部的h字符,直接var_dump(ltrim("helloworld", "h"));即可得到我期望的結(jié)果輸出elloworld
以上的都是在我以為的范圍內(nèi),我也一直都是這么使用的,直到有一次我們有個(gè)需求要在一些字符串上做openssl_encrypt加密,加密之后做個(gè)base64,然后拼接上我們的特殊的字符串前綴KO:,每次加密完成后拼接KO:字符,同樣的,解密之前先把KO:拆出去在解密,結(jié)果發(fā)現(xiàn)解密怎么解都是失敗,后來打了幾個(gè)斷點(diǎn)發(fā)現(xiàn)是ltrim的時(shí)候和預(yù)期結(jié)果不一樣

復(fù)現(xiàn)

原因分析

經(jīng)過上面的小demo,大家應(yīng)該就知道原因是啥了,說的最簡(jiǎn)單通俗的就是它把前面的$str做一個(gè)輪訓(xùn),一個(gè)字符一個(gè)字符的在后面的$character_mask里面看是不是在其中,如果是的話則進(jìn)行截取,不在的話停止運(yùn)行
ltrim代碼形式的表達(dá):


解決方案

解決方案就是使用php中的一些操作字符串函數(shù),多加了基層判斷

  if (substr($str, 0, strlen($character_mask)) == $character_mask) {
            echo substr($str, strlen($character_mask));
  }

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/31221.html

相關(guān)文章

  • 關(guān)于input一些問題解決方法分享

    摘要:輸入框首尾清除空格在中監(jiān)聽鍵盤事件移動(dòng)端底部被彈出的鍵盤遮擋輸入框是通過一直放在頁面底部,當(dāng)點(diǎn)擊進(jìn)行輸入的時(shí)候,就會(huì)出現(xiàn)如下圖片情況有的機(jī)型會(huì)遮擋一些。 前言 input是我們接受來自用戶的數(shù)據(jù)常用標(biāo)簽,在前端開發(fā)中,相信每個(gè)人都會(huì)用到這個(gè)標(biāo)簽,所以在開發(fā)過程中也時(shí)候也會(huì)遇到一些問題,本文的內(nèi)容是我在跟input相愛相殺過程中產(chǎn)生的,在此記錄分享一下。如果喜歡的話可以點(diǎn)波贊/關(guān)注,支持...

    騫諱護(hù) 評(píng)論0 收藏0
  • 關(guān)于input一些問題解決方法分享

    摘要:輸入框首尾清除空格在中監(jiān)聽鍵盤事件移動(dòng)端底部被彈出的鍵盤遮擋輸入框是通過一直放在頁面底部,當(dāng)點(diǎn)擊進(jìn)行輸入的時(shí)候,就會(huì)出現(xiàn)如下圖片情況有的機(jī)型會(huì)遮擋一些。 前言 input是我們接受來自用戶的數(shù)據(jù)常用標(biāo)簽,在前端開發(fā)中,相信每個(gè)人都會(huì)用到這個(gè)標(biāo)簽,所以在開發(fā)過程中也時(shí)候也會(huì)遇到一些問題,本文的內(nèi)容是我在跟input相愛相殺過程中產(chǎn)生的,在此記錄分享一下。如果喜歡的話可以點(diǎn)波贊/關(guān)注,支持...

    vibiu 評(píng)論0 收藏0
  • 關(guān)于input一些問題解決方法分享

    摘要:輸入框首尾清除空格在中監(jiān)聽鍵盤事件移動(dòng)端底部被彈出的鍵盤遮擋輸入框是通過一直放在頁面底部,當(dāng)點(diǎn)擊進(jìn)行輸入的時(shí)候,就會(huì)出現(xiàn)如下圖片情況有的機(jī)型會(huì)遮擋一些。 前言 input是我們接受來自用戶的數(shù)據(jù)常用標(biāo)簽,在前端開發(fā)中,相信每個(gè)人都會(huì)用到這個(gè)標(biāo)簽,所以在開發(fā)過程中也時(shí)候也會(huì)遇到一些問題,本文的內(nèi)容是我在跟input相愛相殺過程中產(chǎn)生的,在此記錄分享一下。如果喜歡的話可以點(diǎn)波贊/關(guān)注,支持...

    chanjarster 評(píng)論0 收藏0
  • 40個(gè)對(duì)初學(xué)者非常有用PHP技巧

    摘要:,,圖片,圖像也是一樣為連接設(shè)置正確的字符編碼曾碰到過字符被正確地存儲(chǔ)在表的問題,也顯示它們是正確的,但是當(dāng)你使用的時(shí)候,你的網(wǎng)頁上卻并不能正確地顯示。使用帶有正確字符集選項(xiàng)的之前,使用的默認(rèn)字符編碼是,這不能顯示例如這樣的字符。 今天我們要介紹一些關(guān)于改善和優(yōu)化PHP代碼的提示和技巧。請(qǐng)注意,這些PHP技巧適用于初學(xué)者,而不是那些已經(jīng)在使用MVC框架的人。 1.不要使用相對(duì)路徑,要定...

    imccl 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

Forest10

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<