PHP函數(shù)strip_tags的一個bug淺析
PHP 函數(shù) strip_tags 提供了從字符串中去除 HTML 和 PHP 標記的功能,該函數(shù)嘗試返回給定的字符串 str 去除空字符、HTML 和 PHP 標記后的結(jié)果。
由于 strip_tags() 無法實際驗證 HTML,不完整或者破損標簽將導(dǎo)致更多的數(shù)據(jù)被刪除。
比如下述代碼:
<div>string</div>string<string<b>hello</b><div>string</div>
通過 strip_tags($str, ‘<div>') 過濾,我們可能期望得到如下結(jié)果:
<div>string</div>string<stringhello<div>string</div>
而實際操作結(jié)果是這樣的:
<div>string</div>string
這一切都是因為加紅的那個左尖括號,查了 PHP 的文檔,有一個警告提示:
由于 strip_tags() 無法實際驗證 HTML,不完整或者破損標簽將導(dǎo)致更多的數(shù)據(jù)被刪除。
既然在執(zhí)行過濾前無法驗證代碼正確性,遇到和標簽相關(guān)的字符 “<” 或 “>” 后面的代碼就全掛了!
- 幾個有用的php字符串過濾,轉(zhuǎn)換函數(shù)代碼
- PHP簡單字符串過濾方法示例
- php字符串過濾與替換小結(jié)
- 詳解PHP函數(shù) strip_tags 處理字符串缺陷bug
- php使用strip_tags()去除html標簽仍有空白的解決方法
- PHP strip_tags保留多個HTML標簽的方法
- PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 標簽的函數(shù)
- PHP關(guān)于htmlspecialchars、strip_tags、addslashes的解釋
- PHP strip_tags()去除HTML、XML以及PHP的標簽介紹
- php 去除html標記--strip_tags與htmlspecialchars的區(qū)別詳解
- php字符串過濾strip_tags()函數(shù)用法實例分析
相關(guān)文章
PHP操作SQL Server數(shù)據(jù)庫實現(xiàn)表的改查與統(tǒng)計
這篇文章主要介紹了如何利用PHP對MS SQL Server數(shù)據(jù)表的查詢、統(tǒng)計與修改,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2022-03-03學(xué)習(xí)php設(shè)計模式 php實現(xiàn)訪問者模式(Visitor)
這篇文章主要介紹了php設(shè)計模式中的訪問者模式,使用php實現(xiàn)訪問者模式,感興趣的小伙伴們可以參考一下2015-12-12深入探討:PHP使用數(shù)據(jù)庫永久連接方式操作MySQL的是與非
本篇文章是對PHP使用數(shù)據(jù)庫永久連接方式操作MySQL的是與非進行了詳細的分析介紹,需要的朋友參考下2013-06-06PHP7原生MySQL數(shù)據(jù)庫操作實現(xiàn)代碼
php7已經(jīng)沒有mysql這個擴展了,好多貼還是按照以前的方法講,讓我這個新手來回找了好多遍都沒找到mysql,php7用后面兩個鏈接數(shù)據(jù)庫,千萬不要傻傻去找也不要去來回拷貝什么dll之類的2020-07-07php number_format() 函數(shù)通過千位分組來格式化數(shù)字的實現(xiàn)代碼
以下是對php中的number format()函數(shù)通過千位分組來格式化數(shù)字的實現(xiàn)代碼進行了詳細的分析介紹,需要的朋友可以過來參考下2013-08-08