收藏一些规范化输入输出的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); } }

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Cara menyeragamkan pengoptimuman prestasi melalui spesifikasi kod PHP Pengenalan: Dengan perkembangan pesat Internet, semakin banyak laman web dan aplikasi dibangunkan berdasarkan bahasa PHP. Dalam proses pembangunan PHP, pengoptimuman prestasi adalah aspek yang penting. Kod PHP berprestasi tinggi boleh meningkatkan kelajuan tindak balas tapak web dan pengalaman pengguna dengan ketara. Artikel ini akan meneroka cara menyeragamkan pengoptimuman prestasi melalui spesifikasi kod PHP dan menyediakan beberapa contoh kod praktikal untuk rujukan. 1. Kurangkan pertanyaan pangkalan data Pertanyaan pangkalan data yang kerap adalah ciri biasa semasa proses pembangunan.

Cara melakukan semakan dan penyeragaman gaya kod dalam GitLab Gaya dan spesifikasi kod adalah sangat penting untuk pembangunan projek pasukan. Spesifikasi kod bersatu boleh meningkatkan kebolehbacaan kod, kebolehselenggaraan dan kebolehskalaan serta mengurangkan potensi pepijat dan ralat. Dalam pembangunan pasukan, dengan menggunakan alat kawalan versi seperti GitLab untuk mengurus kod projek, semakan gaya kod dan penyeragaman boleh dilakukan dengan mudah. Artikel ini akan memperkenalkan cara melakukan semakan dan penyeragaman gaya kod dalam GitLab, dan memberikan contoh kod khusus. Konfigurasikan pemeriksaan kod

Cara menyelesaikan: Ralat input dan output Java: Ralat membaca fail Apabila menggunakan Java untuk operasi membaca fail, kadangkala anda akan menghadapi ralat membaca fail. Ralat ini mungkin disebabkan oleh laluan fail yang salah, fail tidak wujud, kebenaran tidak mencukupi, dsb. Artikel ini akan menerangkan cara menyelesaikan masalah ralat membaca fail dalam ralat input dan output Java, dan menyediakan contoh kod untuk menggambarkan penyelesaiannya. Sahkan sama ada laluan fail adalah betul Apabila membaca fail dalam Java, anda mesti terlebih dahulu memastikan laluan fail adalah betul. Laluan fail boleh menjadi laluan mutlak

Penerangan terperinci dan contoh kod tentang cara menggunakan fungsi scanf dalam bahasa C ialah bahasa pengaturcaraan yang digunakan secara meluas dalam pelbagai pembangunan perisian. Fungsi input dan output memainkan peranan yang sangat penting dalam menulis program. Antaranya, fungsi scanf merupakan salah satu fungsi dalam bahasa C yang digunakan untuk membaca input standard Ia boleh membaca data dari papan kekunci mengikut format tertentu dan menyimpannya dalam pembolehubah yang ditentukan. Artikel ini akan memperkenalkan penggunaan fungsi scanf secara terperinci dan menyediakan beberapa contoh kod sebagai contoh. Mula-mula, mari kita lihat fungsi scanf

Bagaimana untuk mengoptimumkan pengesahan borang dan pengesahan input data dalam pembangunan PHP [Pengenalan] Dalam pembangunan Web, pengesahan borang dan pengesahan input data adalah langkah yang sangat penting. Mereka boleh memastikan kesahihan dan keselamatan data yang dimasukkan oleh pengguna. Ia bukan sahaja dapat mengelakkan ralat input pengguna atau input berniat jahat, tetapi ia juga boleh melindungi pangkalan data atau aplikasi daripada serangan seperti suntikan SQL. Artikel ini akan memperkenalkan cara mengoptimumkan pengesahan borang dan pengesahan input data dalam pembangunan PHP, dan menyediakan contoh kod khusus. [1. Pengesahan sisi pelayan] Langkah pertama ialah memberikan pengguna

PyCharm ialah persekitaran pembangunan bersepadu (IDE) yang biasa digunakan oleh pembangun Python Ia menyediakan pelbagai fungsi dan alatan untuk meningkatkan kualiti dan kecekapan kod. Antaranya, penyeragaman dan pemformatan kod adalah salah satu langkah penting dalam menulis kod berkualiti tinggi. Artikel ini akan memperkenalkan beberapa teknik dan fungsi praktikal dalam PyCharm untuk membantu pembangun menyeragamkan dan memformat kod Python. Semakan spesifikasi PEP8 automatik PEP8 ialah panduan spesifikasi kod yang disediakan secara rasmi oleh Python, yang merangkumi satu siri gaya pengekodan, konvensyen penamaan, dsb.

Dengan pembangunan berterusan dan populariti rangka kerja bahagian hadapan, aplikasi satu halaman telah menjadi salah satu arus perdana dalam kalangan aplikasi web. Antaranya, Vue.js disukai oleh pembangun kerana kesederhanaan, kemudahan pembelajaran dan pembangunan yang cekap. Walau bagaimanapun, tidak seperti aplikasi web tradisional, aplikasi satu halaman perlu berinteraksi dengan API bahagian belakang untuk mendapatkan data dan melaksanakan pelbagai operasi. Untuk menjadikan interaksi antara bahagian hadapan dan bahagian belakang lebih mudah, cekap dan boleh diselenggara, adalah sangat penting untuk mereka bentuk amalan standard API RESTful dalam projek Vue. REHAT (Wakil

Pernyataan input dan output C++ termasuk: 1. penyata scanf(), digunakan untuk membaca input data daripada papan kekunci 2. pernyataan printf(), digunakan untuk mengeluarkan maklumat format yang ditentukan kepada peranti output standard, mewakili output standard; , apabila menggunakan cout untuk output, anda perlu mengikut operator "<<" 4. Pernyataan cin mewakili input standard, dan apabila menggunakan cin untuk input, anda perlu mengikut operator ">>".
