Rumah > rangka kerja php > ThinkPHP > Mari kita bincangkan tentang cara arahan TP5.0.x melaksanakan penapis!

Mari kita bincangkan tentang cara arahan TP5.0.x melaksanakan penapis!

藏色散人
Lepaskan: 2022-02-09 09:07:47
ke hadapan
2623 orang telah melayarinya

Lajur tutorial thinkphp berikut akan memperkenalkan kepada anda cara melaksanakan penapis dengan arahan Thinkphp5.0.x saya harap ia dapat membantu rakan yang memerlukan.

Thinkphp5.0.x pelaksanaan perintah

juga menggunakan <span style="color:#c7254e;">call_user_func()</span> untuk pelaksanaan perintah dan melaksanakannya dalam fungsi penapisValue kelas Permintaan [Disyorkan: thinkphp Tutorial video

Carian pertama yang berfungsi memanggil penapisNilai:

Panggil dalam fungsi cookie() dan input() dalam Permintaan class Mencari filterValue()

dan tidak menemui hasil carian; 🎜>

Susulan daripada fungsi run:

Langkah1

dalam $request

= is_null(

$request

) ? Permintaan::

instance() : $ request; akan melaksanakan pembina permintaan Pada masa ini, kandungan POST telah diperolehi dan diberikan melalui file_get_contents('php://input') dalam pembina. Berikan $request->pembolehubah input Step2

$dispatch

=

diri

::

routeCheck($request , $config); akan memasuki semakan kelas Route dalam routeCheck Fungsi: Fungsi semak memanggil $request->method():

Nilai lalai parameter masuk adalah palsu dan ia akan menjadi dilaksanakan dalam elseif untuk mendapatkannya var_method => _method, pembolehubah yang diperolehi akan ditimpa di bawah pada masa ini, jika __construct diluluskan, $_POST akan memperoleh data yang dihantar oleh jawatan, dan tatasusunan POST boleh dilalui dalam. membina fungsi untuk melaksanakan operasi pada ahli kelas permintaan Meliputi

Eksploitasi berikut. proses memerlukan: mod nyahpepijat dihidupkan

dalam larian () akan memanggil param():

Ikuti fungsi param:

/**

* Dapatkan parameter permintaan semasa

* @access public

* @param string|array $name variable name

* @param mixed $default Nilai lalai

* @param string|array $filter filter method

* @return mixed

*/

Mula-mula masukkan syarat if dan ikuti kaedah kaedah

Parameter masuk method() adalah benar:

Laksanakan pernyataan berikut: Dapatkan jenis permintaan asal$_SERVER['REQUEST_METHOD'], nilai pulangan ialah POST

dikembalikan ke param, $ method=POST

Oleh itu, bahagian POST dalam suis akan dilaksanakan dan masukkan fungsi post:

fungsi siaran:

/ **

* Tetapkan untuk mendapatkan parameter POST

* @access public

* @param string $name variable name

* @param mixed $default Nilai lalai

* @param string|array $filter filter method

* @return mixed

*/

Masukkan parameter:

, kemudian salin ke $content, dan kemudian $_POST dan sama ada ia dalam format json dinilai Jika json dihantar, json_decode diperlukan 🎜>

untuk memasukkan kaedah input: parameter masuk adalah POST Yang diperolehi

Nama palsu, input mengembalikan data dan post() secara langsung mengembalikan fungsi

param() Sederhana:

$vars

= $this-> ;siaran(salah);Masukkan getFilter:

getFilter dalam $filter = $filter ?: $this-> penapis;Dapatkan nilai pembolehubah penapis bagi kelas $request (sebelum ini diliputi oleh construct traversal) dan berikannya sebagai nilai pulangan kepada fungsi input

Teruskan laksanakanarray_walk_recursive($data, [$ini , 'filterValue'], $filter);

array_walk_recursive() menggunakan fungsi yang ditentukan pengguna untuk setiap elemen dalam tatasusunan. Dalam fungsi, nama kunci dan nilai kunci tatasusunan ialah parameter

yang bersamaan dengan $filters=systemdiambil daripada $ Setiap pembolehubah dalam data dihantar sebagai $value Apabila ccc=ipconfig diperolehi, sistem sebagai parameter pertama call_user_func, ipconfig sebagai yang kedua, Menyebabkan pelaksanaan perintah.

Hasil pelaksanaan:

Atas ialah kandungan terperinci Mari kita bincangkan tentang cara arahan TP5.0.x melaksanakan penapis!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:csdn.net
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan