Saya seorang pemula, dan saya mendapati bahawa banyak kelas alat boleh digunakan dengan mengisytiharkannya secara langsung, seperti yang terdapat dalam laravel
Minta $request;
$request->dapatkan();
Ini membingungkan saya Adakah dengan mengisytiharkan pembolehubah kelas menunjukkan kod tersebut?
Selepas mencari di Baidu, tiada siapa yang bertanya tentang isu ini dalam bahasa PHP, hanya Java dan Java adalah seperti ini:Item1 Kelas1;
Isytiharkan objek
Janakan jenis rujukan , Menduduki 4 bait memori, tidak kira apa jenis (objek o atau Dari f) rujukan, ia menduduki 4 bait memoriKelas1 item1 = baharu Class1();
Buat contoh kelas, peruntukkan memori (ingatan ini berkaitan dengan saiz kelas itu sendiri), dan biarkan item rujukan1 menunjuk ke kedudukan permulaan memori ini
Jika ya, $request
hanyalah rujukan kepada Request
dan Request
masih belum digunakan dan tidak wujud dalam ingatan. , maka mengapakah $request
boleh terus menggunakan kaedah di dalamnya? Selepas melihat kod sumber, walaupun sifat dan kaedah dalam kelas ini adalah statik
statik dan sudah wujud dalam ingatan sebelum instantiasi, terdapat juga banyak sifat dan kaedah bukan statik, get( ) ialah kaedah bukan statik!
Tidakkah memanggilnya secara langsung menyebabkan pengecualian penuding?
Tanya orang baru!
PHP tidak mempunyai sintaks seperti ini
Apa yang anda lihat sepatutnya seperti ini
Route::get('/', function (IlluminateHttpRequest $request) {
});
Ini adalah suntikan pergantungan
http://www.golaravel.com/lara...
Perkara berikut adalah salah: Selepas melihat dengan teliti kod sumber, adakah jawapannya seperti ini?
di
Sebelum dua keping kod ini, saya menggunakan
use IlluminateHttpRequest;
gunakan hanya menggunakan ruang nama, tetapi jika anda ingin memanggil kelas, anda mesti memuatkan fail kelas (memerlukan), atau memuatkannya secara automatik. , lavavel menggunakan pemuatan automatik, jadi pada pendapat kami, menggunakan IlluminateHttpRequest adalah sama dengan dapat menggunakan kelas Permintaan secara langsung, sebenarnya, ia tidak melakukan banyak kerja apabila menggunakan kelas Permintaan!
Fungsi pemuatan automatik Laravel adalah seperti berikut:
Ia boleh dilihat bahawa jika anda menggunakan kelas yang tidak segera, ia akan dimuatkan secara automatik dan dibuat seketika.