收藏一些规范化输入输出的PHP函数_PHP教程
在PHP网站开发过程中会遇到很多需要转义的地方,下面推荐几个很好的函数,可以很好地增强网站的输入输出规范化问题。
1. 纯文本输出,适合input
function t($text){ $text = h($text); $text = strip_tags($text); return $text; }
2. 多行纯文本 适合textarea
function text($text) { return trim(nl2br(str_replace(' ', ' ', htmlspecialchars($text)))); }
3. 将html换行变成回车
function br2nl($text) { return trim(preg_replace('/<br\\s*\/?'.'>/i', '', $text)); }
4. 输出安全的html
function h($text){ $text = trim($text); $text = stripslashes($text); //完全过滤注释 $text = preg_replace('/<!--?.*-->/','',$text); //完全过滤动态代码 $text = preg_replace('/<\?|\?'.'>/','',$text); //完全过滤js $text = preg_replace('/<script?.*\/script>/','',$text); $text = str_replace('[','[',$text); $text = str_replace(']',']',$text); $text = str_replace('|','|',$text); //过滤换行符 $text = preg_replace('/\r?\n/','',$text); //br $text = preg_replace('/<br(\s\/)?'.'>/i','[br]',$text); $text = preg_replace('/(\[br\]\s*){10,}/i','[br]',$text); //hr img area input $text = preg_replace('/<(hr|img|input|area|isindex)( [^><\[\]]*)>/i','[\1\2]',$text); //过滤多余html $text = preg_replace('/<\/?(html|head|meta|link|base|body|title|style|script|form|iframe|frame|frameset)[^><]*>/i','',$text); //过滤on事件lang js while(preg_match('/(<[^><]+)( lang|onfinish|onmouse|onexit|onerror|onclick|onkey|onload|onchange|onfocus|onblur)[^><]+/i',$text,$mat)){ $text=str_replace($mat[0],$mat[1],$text); } while(preg_match('/(<[^><]+)(window\.|javascript:|js:|about:|file:|document\.|vbs:|cookie)([^><]*)/i',$text,$mat)){ $text=str_replace($mat[0],$mat[1].$mat[3],$text); } //过滤合法的html标签 while(preg_match('/<([a-z]+)[^><\[\]]*>[^><]*<\/\1>/i',$text,$mat)){ $text=str_replace($mat[0],str_replace('>',']',str_replace('<','[',$mat[0])),$text); } //转换引号 while(preg_match('/(\[[^\[\]]*=\s*)(\"|\')([^\2=\[\]]+)\2([^\[\]]*\])/i',$text,$mat)){ $text=str_replace($mat[0],$mat[1].'|'.$mat[3].'|'.$mat[4],$text); } //过滤错误的单个引号 while(preg_match('/\[[^\[\]]*(\"|\')[^\[\]]*\]/i',$text,$mat)){ $text=str_replace($mat[0],str_replace($mat[1],'',$mat[0]),$text); } //转换其它所有不合法的 < > $text = str_replace('<','<',$text); $text = str_replace('>','>',$text); $text = str_replace('"','"',$text); //反转换 $text = str_replace('[','<',$text); $text = str_replace(']','>',$text); $text = str_replace('|','"',$text); //过滤多余空格 $text = str_replace(' ',' ',$text); return $text; }
5. 过滤脚本代码
function cleanJs($text){ $text = trim($text); $text = stripslashes($text); //完全过滤动态代码 $text = preg_replace('/<\?|\?'.'>/','',$text); //完全过滤js $text = preg_replace('/<script?.*\/script>/','',$text); //过滤多余html $text = preg_replace('/<\/?(html|head|meta|link|base|body|title|style|script|form|iframe|frame|frameset)[^><]*>/i','',$text); //过滤on事件lang js while(preg_match('/(<[^><]+)(lang|onfinish|onmouse|onexit|onerror|onclick|onkey|onload|onchange|onfocus|onblur)[^><]+/i',$text,$mat)){ $text=str_replace($mat[0],$mat[1],$text); } while(preg_match('/(<[^><]+)(window\.|javascript:|js:|about:|file:|document\.|vbs:|cookie)([^><]*)/i',$text,$mat)){ $text=str_replace($mat[0],$mat[1].$mat[3],$text); } return $text; }
6. 在编辑器中显示纯文本
function et($text) { return trim(br2nl(str_replace(' ', ' ', $text ))); }
7. 在html编辑器中显示html
function eh($text) { return trim(str_replace('"','"', $text)); }
8. 判断时间距离
function friendlyDate($sTime,$type = 'normal',$alt = 'false') { //sTime=源时间,cTime=当前时间,dTime=时间差 $cTime = time(); $dTime = $cTime - $sTime; $dDay = intval(date("Ymd",$cTime)) - intval(date("Ymd",$sTime)); $dYear = intval(date("Y",$cTime)) - intval(date("Y",$sTime)); //normal:n秒前,n分钟前,n小时前,日期 if($type=='normal'){ if( $dTime < 60 ) { echo $dTime."秒前"; } elseif( $dTime < 3600 ) { echo intval($dTime/60)."分钟前"; } elseif( $dTime >= 3600 && $dDay == 0 ) { echo intval($dTime/3600)."小时前"; } elseif($dYear==0) { echo date("m-d ,H:i",$sTime); } else { echo date("Y-m-d ,H:i",$sTime); } //full: Y-m-d , H:i:s } elseif($type=='full') { echo date("Y-m-d , H:i:s",$sTime); } }

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds



Comment standardiser l'optimisation des performances grâce aux spécifications du code PHP Introduction : Avec le développement rapide d'Internet, de plus en plus de sites Web et d'applications sont développés sur la base du langage PHP. Dans le processus de développement PHP, l’optimisation des performances est un aspect crucial. Un code PHP performant peut améliorer considérablement la vitesse de réponse du site Web et l'expérience utilisateur. Cet article explorera comment standardiser l'optimisation des performances grâce aux spécifications du code PHP et fournira quelques exemples de code pratiques à titre de référence. 1. Réduisez les requêtes de base de données Les requêtes fréquentes de base de données sont un problème de performances courant pendant le processus de développement.

Comment effectuer la vérification et la normalisation du style de code dans GitLab Le style et les spécifications du code sont très importants pour le développement de projets d'équipe. Les spécifications de code unifiées peuvent améliorer la lisibilité, la maintenabilité et l’évolutivité du code, et réduire les bugs et erreurs potentiels. Dans le développement en équipe, en utilisant des outils de contrôle de version tels que GitLab pour gérer le code du projet, la vérification du style de code et la standardisation peuvent être facilement effectuées. Cet article explique comment effectuer la vérification et la normalisation du style de code dans GitLab, et fournit des exemples de code spécifiques. Configurer l'inspection du code

Comment résoudre : Erreur d'entrée et de sortie Java : Erreur de lecture de fichier Lorsque vous utilisez Java pour des opérations de lecture de fichiers, vous rencontrerez parfois des erreurs de lecture de fichiers. Cette erreur peut être causée par un chemin de fichier incorrect, un fichier inexistant, des autorisations insuffisantes, etc. Cet article explique comment résoudre le problème d'erreur de lecture de fichier dans les erreurs d'entrée et de sortie Java et fournit des exemples de code pour illustrer la solution. Vérifiez si le chemin du fichier est correct. Lors de la lecture d'un fichier en Java, vous devez d'abord vous assurer que le chemin du fichier est correct. Le chemin du fichier peut être un chemin absolu

Explication détaillée et exemples de code sur la façon d'utiliser la fonction scanf en langage C. Le langage C est un langage de programmation largement utilisé dans divers développements de logiciels. Ses fonctions d'entrée et de sortie jouent un rôle très important dans l'écriture de programmes. Parmi elles, la fonction scanf est l'une des fonctions du langage C utilisées pour lire l'entrée standard. Elle peut lire les données du clavier selon un format spécifique et les stocker dans une variable spécifiée. Cet article présentera en détail l'utilisation de la fonction scanf et fournira quelques exemples de codes pour exemples. Jetons d’abord un coup d’œil à la fonction scanf

Comment optimiser la validation des formulaires et la validation des saisies de données dans le développement PHP [Introduction] Dans le développement Web, la validation des formulaires et la validation des saisies de données sont des étapes très importantes. Elles peuvent garantir la légalité et la sécurité des données saisies par l'utilisateur. Non seulement il peut éviter les erreurs de saisie utilisateur ou les entrées malveillantes, mais il peut également protéger la base de données ou l'application contre des attaques telles que l'injection SQL. Cet article expliquera comment optimiser la validation des formulaires et la validation des entrées de données dans le développement PHP, et fournira des exemples de code spécifiques. [1. Vérification côté serveur] La première étape consiste à fournir à l'utilisateur

PyCharm est un environnement de développement intégré (IDE) couramment utilisé par les développeurs Python. Il fournit une multitude de fonctions et d'outils pour améliorer la qualité et l'efficacité du code. Parmi eux, la normalisation et le formatage du code constituent l’une des étapes importantes de l’écriture d’un code de haute qualité. Cet article présentera quelques techniques et fonctions pratiques de PyCharm pour aider les développeurs à standardiser et formater le code Python. Vérification automatique des spécifications PEP8 PEP8 est le guide de spécification de code officiellement fourni par Python, qui comprend une série de styles de codage, de conventions de dénomination, etc.

Avec le développement continu et la popularité des frameworks front-end, les applications monopage sont devenues l'une des applications Web les plus répandues. Parmi eux, Vue.js est apprécié des développeurs en raison de sa simplicité, de sa facilité d'apprentissage et de son développement efficace. Cependant, contrairement aux applications Web traditionnelles, les applications monopage doivent interagir avec les API back-end pour obtenir des données et effectuer diverses opérations. Afin de rendre l'interaction entre le front-end et le back-end plus pratique, efficace et maintenable, il est très important de concevoir la pratique standardisée de l'API RESTful dans le projet Vue. REST (Repré

Les instructions d'entrée et de sortie C++ incluent : 1. l'instruction scanf(), utilisée pour lire les données saisies à partir du clavier ; 2. l'instruction printf(), utilisée pour afficher les informations de format spécifiées sur le périphérique de sortie standard ; 3. l'instruction cout, représentant la sortie standard ; , lorsque vous utilisez cout pour la sortie, vous devez suivre l'opérateur "<<" ; 4. L'instruction cin représente l'entrée standard, et lorsque vous utilisez cin pour l'entrée, vous devez suivre l'opérateur ">>".
