Jadual Kandungan
PHP中我经常容易混淆的三组函数,PHP混淆三组函数
Rumah php教程 php手册 PHP中我经常容易混淆的三组函数,PHP混淆三组函数

PHP中我经常容易混淆的三组函数,PHP混淆三组函数

Jun 13, 2016 am 09:20 AM
http php fungsi mengelirukan daripada

PHP中我经常容易混淆的三组函数,PHP混淆三组函数

原文:http://www.ido321.com/1252.html

一、htmlentities() 和htmlspecialchars()

       1、htmlentities()

             1.1  功能:把字符转换为 HTML 实体。字符包括ASCII实体和ISO 8859-1实体(HTML实体对照表:http://www.w3school.com.cn/tags/html_ref_entities.html)

             1.2  语法:htmlentities(string,quotestyle,character-set)

             1.3  参数:string是必选参数,是需要转换的字符串。其余可选,quotestyle规定如何编码单引号和双引号:ENT_COMPAT – 默认。仅编码双引号;ENT_QUOTES – 编码双引号和单引号;ENT_NOQUOTES – 不编码任何引号。character-set是规定转换用的字符集,常用的有UTF-8/GB-2312/ISO-8859-1(默认)。

             1.4  提示:无法被识别的字符集将被忽略,并由 ISO-8859-1 代替。

<span>$str = <span>"John & 'Adams'"</span>;
<span>echo</span> htmlentities($str);
<span>//在浏览器中输出:John & 'Adams'</span>
//查看源代码:John & <span>'Adams'</span></span>
Salin selepas log masuk
Salin selepas log masuk

2、htmlspecialchars()

2.1 把一些预定义的字符转换为 HTML 实体。预定义字符都是ASCII 实体,即此函数不能转换ISO 8859-1实体,这是和htmlrntities()的区别

预定义的字符是:

  • & (和号) 成为 &
  • ” (双引号) 成为 "
  • ‘ (单引号) 成为 '
  • < (小于) 成为 <
  • > (大于) 成为 >

2.2 htmlspecialchars(string,quotestyle,character-set)

2.3 参数htmlentities()

2.4 提示:无法被识别的字符集将被忽略,并由 ISO-8859-1 代替。

<span>$str = <span>"John & 'Adams'"</span>;
<span>echo</span> htmlentities($str);
<span>//在浏览器中输出:John & 'Adams'</span>
//查看源代码:John & <span>'Adams'</span></span>
Salin selepas log masuk
Salin selepas log masuk

二、html_entity_decode()和htmlspecialchars_decode()

html_entity_decode(string,quotestyle,character-set) 函数把 HTML 实体转换为字符,是htmlentities()的反函数。

htmlspecialchars_decode(string,quotestyle)函数把预定义的 HTML 实体转换为字符,是htmlspecialchars()的反函数。

<span>$str = <span>"John & &#039;Adams&#039;"</span>;
<span>echo</span> html_entity_decode($str);
<span>//浏览器输出:John & 'Adams'</span>
//源代码:John & &#039;Adams&#039;</span>
Salin selepas log masuk

三、addslashes()和addcslashes()

1、addslashes(string):在指定的预定义字符前添加反斜杠。string是需要检查的字符串。该函数数可用于为存储在数据库中的字符串以及数据库查询语句准备合适的字符串。

预定义字符是:单引号(’)、双引号(”)、反斜扛(\)和NULL

ps:默认情况下,PHP 指令 magic_quotes_gpc 为 on,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。

<span>$str = <span>"Who's John Adams?"</span>;
<span>echo</span> $str . <span>" This is not safe in a database query.<br />"</span>;
<span>echo</span> addslashes($str) . <span>" This is safe in a database query."</span>;</span>
Salin selepas log masuk

输出:

<span>Who's John Adams? This is not safe in a database query.
Who\'s John Adams? This is safe in a database query.</span>
Salin selepas log masuk
<span>   <span>2、addcslashes(</span><em>string</em>,<em>characters</em><span>) 函数在<span>指定的字符</span>前添加反斜杠。stirng必须,第二个可选。规定受 addcslashes() 影响的字符或字符范围。</span></span>
Salin selepas log masuk
<span>             ps:<strong>在对 0,r,n 和 t 应用 addcslashes() 时要小心。在 PHP 中,\0,\r,\n 和 \t 是预定义的转义序列。此函数可以对任何字符,包括预定义字符进行反斜扛添加,这是和addslashes的区别</strong></span>
Salin selepas log masuk
<span>//向特定字符添加反斜杠</span><span>
$str = <span>"Hello, my name is John Adams."</span>;
<span>echo</span> $str;
<span>echo</span> addcslashes($str,<span>'m'</span>);
<span>echo</span> addcslashes($str,<span>'J'</span>);</span>
Salin selepas log masuk

输出:

<span>Hello, my name is John Adams.
Hello, \my na\me is John Ada\ms.
Hello, my name is \John Adams.</span>
Salin selepas log masuk
<span>//向字符串中的一个范围内的字符添加反斜杠</span><span>
$str = <span>"Hello, my name is John Adams."</span>;
<span>echo</span> $str;
<span>echo</span> addslashes($str);   <span>//使用addslashes</span>
<span>echo</span> addcslashes($str,<span>'A..Z'</span>);
<span>echo</span> addcslashes($str,<span>'a..z'</span>);
<span>echo</span> addcslashes($str,<span>'a..h'</span>);</span>
Salin selepas log masuk

输出:

Hello, my name is John Adams.

Hello, my name is John Adams.

\Hello, my name is \John \Adams.

H\e\l\l\o, \m\y \n\a\m\e \i\s J\o\h\n A\d\a\m\s.

H\ello, my n\am\e is Jo\hn A\d\ams.

下一篇:Ubuntu下安装XAMPP

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

7 Fungsi PHP Saya Menyesal Saya Tidak Tahu Sebelum ini 7 Fungsi PHP Saya Menyesal Saya Tidak Tahu Sebelum ini Nov 13, 2024 am 09:42 AM

Jika anda seorang pembangun PHP yang berpengalaman, anda mungkin merasakan bahawa anda telah berada di sana dan telah melakukannya. Anda telah membangunkan sejumlah besar aplikasi, menyahpenyahpepijat berjuta-juta baris kod dan mengubah suai sekumpulan skrip untuk mencapai op

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

Jelaskan JSON Web Tokens (JWT) dan kes penggunaannya dalam PHP API. Jelaskan JSON Web Tokens (JWT) dan kes penggunaannya dalam PHP API. Apr 05, 2025 am 12:04 AM

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,

Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Feb 07, 2025 am 11:57 AM

Tutorial ini menunjukkan cara memproses dokumen XML dengan cekap menggunakan PHP. XML (bahasa markup extensible) adalah bahasa markup berasaskan teks yang serba boleh yang direka untuk pembacaan manusia dan parsing mesin. Ia biasanya digunakan untuk penyimpanan data

Program PHP untuk mengira vokal dalam rentetan Program PHP untuk mengira vokal dalam rentetan Feb 07, 2025 pm 12:12 PM

Rentetan adalah urutan aksara, termasuk huruf, nombor, dan simbol. Tutorial ini akan mempelajari cara mengira bilangan vokal dalam rentetan yang diberikan dalam PHP menggunakan kaedah yang berbeza. Vokal dalam bahasa Inggeris adalah a, e, i, o, u, dan mereka boleh menjadi huruf besar atau huruf kecil. Apa itu vokal? Vokal adalah watak abjad yang mewakili sebutan tertentu. Terdapat lima vokal dalam bahasa Inggeris, termasuk huruf besar dan huruf kecil: a, e, i, o, u Contoh 1 Input: String = "TutorialSpoint" Output: 6 menjelaskan Vokal dalam rentetan "TutorialSpoint" adalah u, o, i, a, o, i. Terdapat 6 yuan sebanyak 6

Terangkan pengikatan statik lewat dalam php (statik: :). Terangkan pengikatan statik lewat dalam php (statik: :). Apr 03, 2025 am 12:04 AM

Mengikat statik (statik: :) Melaksanakan pengikatan statik lewat (LSB) dalam PHP, yang membolehkan kelas panggilan dirujuk dalam konteks statik dan bukannya menentukan kelas. 1) Proses parsing dilakukan pada masa runtime, 2) Cari kelas panggilan dalam hubungan warisan, 3) ia boleh membawa overhead prestasi.

Apakah kaedah Magic PHP (__construct, __destruct, __call, __get, __set, dll) dan menyediakan kes penggunaan? Apakah kaedah Magic PHP (__construct, __destruct, __call, __get, __set, dll) dan menyediakan kes penggunaan? Apr 03, 2025 am 12:03 AM

Apakah kaedah sihir PHP? Kaedah sihir PHP termasuk: 1. \ _ \ _ Membina, digunakan untuk memulakan objek; 2. \ _ \ _ Destruct, digunakan untuk membersihkan sumber; 3. \ _ \ _ Call, mengendalikan panggilan kaedah yang tidak wujud; 4. \ _ \ _ Mendapatkan, melaksanakan akses atribut dinamik; 5. \ _ \ _ Set, melaksanakan tetapan atribut dinamik. Kaedah ini secara automatik dipanggil dalam situasi tertentu, meningkatkan fleksibiliti dan kecekapan kod.

See all articles