require_once '/path/to/HTMLPurifier.auto.php';
Mengikut spesifikasi ThinkPHP, untuk sambungan pihak ketiga yang tidak mematuhi spesifikasi pembangunan ThinkPHP, HTMLPurifier perlu diletakkan dalam direktori Library/Vendor. Kemudian kita boleh memperkenalkan HTMLPurifier.auto.php ke dalam program rangka kerja melalui kaedah berikut:
vendor('htmlpurifier.library.HTMLPurifier#auto');
Walau bagaimanapun, saya menggunakan ThinkPHP 3.2.1 di sini dan mendapati kaedah ini hanya boleh digunakan dalam fungsi, untuk kelas pengawal Pengenalan sedemikian tidak boleh diiktiraf dengan betul. Dalam erti kata lain, kami hanya boleh merujuknya dalam fail common/function.php.
Buat objek HTMLPurifier dan laksanakan penapisan teks kaya
$config = HTMLPurifier_Config::createDefault(); $purifier = new HTMLPurifier($config); $clean_html = $purifier->purify($dirty_html);
Cara mengkonfigurasi penapis HTMLPurifier
Untuk menggunakan HTMLPurifier, tumpuan masih pada cara mengkonfigurasinya. Untuk program di atas, kami mencipta objek konfigurasi lalai melalui kaedah createDefault(). Jika kita ingin mengubah konfigurasi, kita boleh menggunakan kaedah set untuk mengkonfigurasi tetapan Kaedahnya adalah seperti berikut:
$config->set('config_object', value, a=null);
Parameter pertama ialah atribut yang perlu dikonfigurasikan, parameter kedua ialah nilai atribut, dan apakah kegunaan khusus bagi parameter ketiga? Saya belum mengetahuinya, tetapi saya tidak menggunakannya secara umum.
Atribut konfigurasi HTMLPurifier boleh ditanya melalui tapak webnya
Pemilihan atribut konfigurasi
Dokumen konfigurasi HTMLPurifier dikelaskan terutamanya kepada dua peringkat Kategori utama ialah Attr (atribut), HTML (tag html), AutoFormat (format automatik), CSS (konfigurasi css), Output (konfigurasi output)...Pemilihan subkategori boleh dilengkapkan dengan menambah nama kategori utama Menambah nama subkategori.
Sebagai contoh, jika saya ingin mengkonfigurasi tag html yang dibenarkan, seperti tag p dan tag, saya boleh mengkonfigurasinya seperti berikut
$config->set('HTML.Allowed', 'p,a');
Pemilihan nilai atribut
Dalam dokumen rasmi, selepas mengklik pada atribut, anda boleh lihat penjelasan atribut ini, Ia akan memberitahu anda bahawa jenis nilai (Jenis) atribut ini ialah String, Int, Array, Boolen...
Kemudian ia juga akan memberitahu anda nilai lalai atribut ini, seperti NULL , benar, salah, dsb. Format nilai ini adalah sama dengan format PHP.
Mekanisme penapisan senarai putih
HTMLPurifier menggunakan mekanisme penapisan senarai putih, dan hanya yang dibenarkan oleh tetapan akan lulus pemeriksaan.
Contoh penapisan asas
a, tapis semua teg html dalam teks
/** * 过滤掉所有html标签很简单,原因则在白名单机制完成 */ $config->set('HTML.Allowed', '');
b, kekalkan teg hiperpautan a dan atribut alamat pautan hrefnya, dan secara automatik menambah nilai atribut sasaran sebagai '_blank'
rreeec, Lengkapkan kod perenggan secara automatik dan kosongkan tag kosong yang tidak berguna
$config->set('HTML.Allowed', 'a[href]'); $config->set('HTML.TargetBlank', true);
Semua sumber di laman web ini disumbangkan oleh netizen atau dicetak semula oleh tapak muat turun utama. Sila semak integriti perisian itu sendiri! Semua sumber di laman web ini adalah untuk rujukan pembelajaran sahaja. Tolong jangan gunakannya untuk tujuan komersial. Jika tidak, anda akan bertanggungjawab untuk semua akibat! Jika terdapat sebarang pelanggaran, sila hubungi kami untuk memadamkannya. Maklumat hubungan: admin@php.cn
Artikel Berkaitan
01Nov2024
Pengepala yang manakah dalam Perpustakaan Standard C Termasuk Lain-lain? Secara umumnya, pengaturcara tidak seharusnya menganggap bahawa satu pengepala perpustakaan standard C akan...
03Jun2023
Perpustakaan kelas pihak ketiga Perpustakaan kelas pihak ketiga merujuk kepada perpustakaan kelas lain selain rangka kerja ThinkPHP dan perpustakaan kelas projek aplikasi Ia biasanya disediakan oleh sistem atau produk pihak ketiga, seperti perpustakaan kelas Smarty, Zend dan sistem lain. Untuk perpustakaan kelas yang diimport lebih awal menggunakan pemuatan automatik atau kaedah import, konvensyen ThinkPHP adalah menggunakan .class.php kerana akhiran bukan sedemikian perlu dikawal melalui parameter import. Tetapi untuk perpustakaan jenis ketiga, kerana tidak ada perjanjian sedemikian, akhirannya hanya boleh dianggap sebagai php. Untuk memperkenalkan perpustakaan kelas dengan mudah daripada rangka kerja dan sistem lain, ThinkPHP secara khusus menyediakan fungsi mengimport perpustakaan kelas pihak ketiga. Perpustakaan kelas pihak ketiga diletakkan secara seragam dalam direktori sistem ThinkPHP/
02Jun2024
Perpustakaan dan rangka kerja popular dalam ekosistem C++ berbanding ekosistem bahasa pengaturcaraan lain Pengenalan C++ ialah bahasa yang penting untuk pengaturcaraan sistem, dengan ekosistem perpustakaan dan rangka kerja yang luas dan mantap. Artikel ini akan membandingkan perpustakaan dan rangka kerja dalam ekosistem C++ dengan yang terdapat dalam ekosistem bahasa pengaturcaraan popular yang lain, memfokuskan pada ciri, prestasi dan kemudahan penggunaan. Perpustakaan Standard Perpustakaan: Pustaka standard C++ menyediakan pelbagai struktur data, algoritma dan fungsi input/output. Walaupun bahasa lain mempunyai perpustakaan standard yang serupa, perpustakaan C++ terkenal dengan kecekapan dan fleksibilitinya. Pustaka Boost: Boost ialah koleksi perpustakaan pihak ketiga yang digunakan secara meluas yang menyediakan banyak ciri tambahan yang tidak terdapat dalam perpustakaan standard. Ia terkenal kerana menyediakan pelbagai ciri merentas platform seperti benang,
08May2024
Golang boleh disepadukan dengan teknologi lain dalam cara berikut: Penyepaduan dengan Python: menggunakan cgo untuk memanggil perpustakaan Python, atau memanggil fungsi R melalui perpustakaan gor. Sepadukan dengan R: gunakan pakej R, atau berinteraksi dengan R melalui perpustakaan gor. Sepadukan dengan teknologi lain: TensorFlow, Keras, Pandas, dsb. Penyepaduan ini meningkatkan keupayaan penyelesaian pembelajaran mesin.
16Oct2023
Kaedah pelaksanaan kesan khas Java termasuk menggunakan perpustakaan grafik Java, menggunakan perpustakaan Java 3D, menggunakan teknologi Java Web, menggunakan enjin permainan Java, menggunakan JavaFX, menggunakan OpenGL, dsb. Pengenalan terperinci: 1. Gunakan kaedah perpustakaan grafik Java Java menyediakan banyak perpustakaan grafik, seperti Java AWT (Abstract Window Toolkit) dan Java Swing Mereka menyediakan pelbagai komponen grafik dan fungsi lukisan, yang boleh digunakan untuk melaksanakan pelbagai kesan khas. dan lain-lain.
02Nov2024
Pengepala dalam Perpustakaan Standard C dengan Kemasukan TerjaminDalam perpustakaan standard C, pengepala boleh menyertakan satu sama lain dalam pelbagai cara yang tidak...
Hot Tools
Pustaka PHP untuk bekas suntikan kebergantungan
Pustaka PHP untuk bekas suntikan kebergantungan
Koleksi 50 algoritma PHP klasik yang sangat baik
Algoritma PHP klasik, pelajari idea yang sangat baik dan kembangkan pemikiran anda
Pustaka PHP kecil untuk mengoptimumkan imej
Pustaka PHP kecil untuk mengoptimumkan imej