Rumah rangka kerja php Laravel laravel的HTTP请求:获取输入信息

laravel的HTTP请求:获取输入信息

Dec 14, 2020 pm 07:02 PM
laravel

在laravel框架获取输入是非常的方便,它提供了多种方法来获取输入。

在laravel中使用Illuminate\Http\Request实例来接受请求,如下

use Illuminate\Http\Request;

$request = new Request();
echo $request->method();

可以用简便的自动注入方法,使用如下:

<?php
namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;

class IndexController extends Controller
{
    public function index (Request $request)
    {
        dump($request->method());    
    }
}

获取请求路径和请求方法

获取请求方法非常的简单,使用method方法即可。另外,还有一个判断当前请求动作的方法isMethod

if ($request->isMethod(&#39;post&#39;)) {
    // ...
}

获取请求路径的方法也有几个,它们之间是有区别的,比如对一个URL地址:http://example.com/path1/path2?a=23&b=3,三个方法能获得的值分别如下:

  • path():获取路径,path1/path2

  • url():获取url地址,但不含?及后面字符串。http://example.com/path1/path2

  • fullUrl():获取完整的路径。http://example.com/path1/path2?a=23&b=3

获取输入

下面从几个方面看获取输入,如获取全部输入或获取单个输入获取部分输入等。

获取全部输入

获取全部输入有两种方法可以得到,all()以及input()。input中不加任何参数表示接受全部的意思:

$request->all();
// or
$request->input();

获取一个输入

获取一个输入,也是使用input方法,但是要给第一个参数,该参数表示需要获取的字段的值。

$request->input(&#39;name&#39;);

input还可以接受第二个参数,该参数是当没有获取到字段值时设置的默认值。如:

$request->input(&#39;name&#39;, &#39;php.cn&#39;);

除此之外,input还能获取数值及json数据,获取时使用操作符“.”

$request->input(&#39;users.name&#39;);
$request->input(&#39;users.0.name&#39;);
$request->input(&#39;users.*.name&#39;);

除了input方法外,还有一个query方法也可以获取输入,但是它们的区别是,input能从表单和查询字符串获取输入,而query方法只能从查询字符串获取输入。query方法和input方法的用法是一样的,这里就不做演示了。

还有一种简单获取输入方法,叫做动态获取输入,可以直接通过属性来获取输入。比如表单中含有name字段,那么就可以通过以下方法获取

$request->name;

但要注意的是,Laravel 将会先从请求体中查找参数。如果该值不存在,则从路由参数中查找。

获取一个bool值

laravel提供一个获取字段值并主动将它转换为bool类型值的函数,该方法是boolean。

if ($request->boolean(&#39;name&#39;)) {
    // ...
}

判断值是否存在

判断一个输入值是否存在有几个方法,用法稍微有些区别。hasfilled都可以用来判断输入值是否存在,但区别在于:has只要该字段值存在就返回真。而filled不仅存在而且还要不为空的情况才返回真。

has还可以用来判断多个字段,如果多个字段值都存在就返回真,否则返回假

if ($request->has([&#39;name&#39;, &#39;email&#39;])) {}

而hasAny则只有有一个字段值存在就返回真

if ($request->hasAny([&#39;name&#39;, &#39;email&#39;])) {}

获取部分输入

laravel还能够获取部分输入,使用only或except方法,它们的用法和功能完全一样。返回的是一个关联数组:

$request->only(&#39;name&#39;, &#39;email&#39;);
// or
$request->only([&#39;name&#39;, &#39;email&#39;]);

Atas ialah kandungan terperinci laravel的HTTP请求:获取输入信息. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

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.

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!

Artikel Panas

Oguri Cap Build Guide | Musume Derby Pretty
3 minggu yang lalu By Jack chen
Agnes Tachyon Build Guide | Musume Derby Pretty
3 minggu yang lalu By Jack chen
Puncak bagaimana untuk emote
4 minggu yang lalu By Jack chen

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)

Bagaimana untuk melaksanakan pengesahan permintaan di Laravel? Bagaimana untuk melaksanakan pengesahan permintaan di Laravel? Jul 16, 2025 am 03:03 AM

Terdapat dua kaedah utama untuk pengesahan permintaan di Laravel: Pengesahan Pengawal dan Kelas Permintaan Borang. 1. Kaedah mengesahkan () dalam pengawal sesuai untuk senario mudah, secara langsung meluluskan peraturan dan secara automatik mengembalikan kesilapan; 2. Kelas FormRequest sesuai untuk senario yang kompleks atau boleh diguna semula, mewujudkan kelas melalui artis dan menentukan peraturan dalam peraturan () untuk mencapai kod decoupling dan penggunaan semula; 3. Ralat ralat boleh disesuaikan melalui mesej () untuk meningkatkan pengalaman pengguna; 4. Menentukan alias medan melalui atribut () untuk membuat mesej ralat lebih mesra; Kedua -dua kaedah ini mempunyai kelebihan dan kekurangan mereka, dan penyelesaian yang sesuai harus dipilih mengikut keperluan projek.

Mengendalikan permintaan dan respons HTTP di Laravel. Mengendalikan permintaan dan respons HTTP di Laravel. Jul 16, 2025 am 03:21 AM

Inti mengendalikan permintaan dan respons HTTP di Laravel adalah untuk menguasai pengambilalihan data permintaan, pulangan tindak balas dan muat naik fail. 1. Apabila menerima data permintaan, anda boleh menyuntik contoh permintaan melalui jenis petikan dan menggunakan input () atau kaedah sihir untuk mendapatkan medan, dan menggabungkan mengesahkan () atau membentuk kelas permintaan untuk pengesahan; 2. REBAT RESPONSE menyokong rentetan, pandangan, JSON, respons dengan kod status dan tajuk dan operasi redirect; 3. Apabila memproses fail muat naik, anda perlu menggunakan kaedah fail () dan simpan () untuk menyimpan fail. Sebelum memuat naik, anda perlu mengesahkan jenis dan saiz fail, dan laluan penyimpanan boleh disimpan ke pangkalan data.

Menjana dan menggunakan kilang -kilang pangkalan data di Laravel. Menjana dan menggunakan kilang -kilang pangkalan data di Laravel. Jul 16, 2025 am 02:05 AM

Kilang pangkalan data adalah alat di Laravel untuk menghasilkan data palsu model. Ia dengan cepat mewujudkan data yang diperlukan untuk ujian atau pembangunan dengan menentukan peraturan medan. Sebagai contoh, selepas menggunakan phpartisanMake: kilang untuk menghasilkan fail kilang, menetapkan logik generasi bidang seperti nama dan e-mel dalam kaedah definisi (), dan mencipta rekod melalui pengguna :: kilang ()-> create (); 1. Menyokong penjanaan data, seperti pengguna :: kilang (10)-> membuat (); 2. Gunakan membuat () untuk menghasilkan array data yang tidak diturunkan; 3. Membolehkan penindasan sementara nilai medan; 4. Menyokong hubungan persatuan, seperti penciptaan automatik

Menyesuaikan penyedia pengesahan Laravel. Menyesuaikan penyedia pengesahan Laravel. Jul 16, 2025 am 03:01 AM

Pembekal Pengesahan Custom Laravel boleh memenuhi keperluan pengurusan pengguna yang kompleks dengan melaksanakan antara muka UserProvider dan mendaftar dengan perkhidmatan Auth. 1. Memahami asas -asas mekanisme pengesahan Laravel. Pembekal bertanggungjawab mendapatkan maklumat pengguna. Pengawal mentakrifkan kaedah pengesahan. EloquentUserProvider dan SessionGuard digunakan secara lalai. 2. Mewujudkan Pengguna Pengguna Custom memerlukan pelaksanaan RetrieveBebyID, RetrieveByCredentials, ValidateCredentials dan kaedah lain. Sebagai contoh, ApikeYuserProvider boleh digunakan mengikut

Menjana URL untuk Laluan Dinamakan di Laravel. Menjana URL untuk Laluan Dinamakan di Laravel. Jul 16, 2025 am 02:50 AM

Cara yang paling biasa untuk menjana laluan yang dinamakan di Laravel adalah menggunakan fungsi penolong laluan (), yang secara automatik sepadan dengan laluan berdasarkan nama laluan dan mengendalikan parameter mengikat. 1. Lulus nama laluan dan parameter dalam pengawal atau pandangan, seperti laluan ('user.profile', ['id' => 1]); 2. Apabila pelbagai parameter, anda hanya perlu lulus array, dan perintah itu tidak menjejaskan padanan, seperti laluan ('user.post.show', ['id' => 1, 'postid' => 10]); 3. Pautan boleh dibenamkan secara langsung dalam templat bilah, seperti melihat maklumat; 4. Apabila parameter pilihan tidak disediakan, mereka tidak dipaparkan, seperti laluan ('user.post',

Menggunakan Tinker Artisan untuk Debugging di Laravel. Menggunakan Tinker Artisan untuk Debugging di Laravel. Jul 16, 2025 am 01:59 AM

Artisantinker adalah alat penyahpepijatan yang kuat di Laravel. Ia menyediakan persekitaran shell interaktif yang boleh secara langsung berinteraksi dengan aplikasi untuk memudahkan lokasi masalah yang cepat. 1. Ia boleh digunakan untuk mengesahkan pertanyaan model dan pangkalan data, menguji sama ada pengambilalihan data adalah betul dengan melaksanakan pernyataan yang fasih, dan menggunakan TOSQL () untuk melihat SQL yang dihasilkan; 2. Ia boleh menguji kelas perkhidmatan atau logik perniagaan, secara langsung hubungi kaedah kelas perkhidmatan dan mengendalikan suntikan ketergantungan; 3. Ia menyokong debugging beratur tugas dan siaran acara, tugas atau peristiwa yang mencetuskan secara manual untuk memerhatikan kesan pelaksanaan, dan boleh menyelesaikan masalah seperti kegagalan giliran dan kegagalan peristiwa.

Melaksanakan logik pengesahan tersuai di Laravel. Melaksanakan logik pengesahan tersuai di Laravel. Jul 16, 2025 am 01:14 AM

Untuk melampaui sistem pengesahan terbina dalam Laravel, ia boleh dilaksanakan melalui logik pengesahan tersuai, seperti mengendalikan proses log masuk yang unik, integrasi pihak ketiga, atau peraturan pengesahan khusus pengguna. 1. Anda boleh membuat pembekal pengguna tersuai, mendapatkan dan mengesahkan pengguna dari sumber data bukan lalai dengan melaksanakan antara muka UserProvider dan kaedah penentuan seperti RetreevebyId, dan mendaftarkan pembekal dalam Config/Auth.php. 2. Logik log masuk tersuai boleh ditulis dalam pengawal, seperti menambah cek tambahan selepas memanggil auth :: percubaan (), atau menggunakan auth :: login () untuk mengesahkan pengguna secara manual. 3. Anda boleh menggunakan middleware untuk melakukan pengesahan tambahan, seperti memeriksa sama ada pengguna "aktif"

Apakah inersia.js dan bagaimana menggunakannya dengan laravel dan vue/react? Apakah inersia.js dan bagaimana menggunakannya dengan laravel dan vue/react? Jul 17, 2025 am 02:00 AM

Inersia.jsworkswithlaravelbyallowingdeveloperstobuildspasusingvueorreoreorswhileepinglaravelresponsibleForroutingandPageLoading.1.RoutesareDefinedInlaravelaSusal.2.ControllersReturnineria:

See all articles