>PHP 프레임워크 >Laravel >laravel HTTP 요청: 입력 정보 가져오기

laravel HTTP 요청: 입력 정보 가져오기

齐天大圣
齐天大圣원래의
2020-12-14 19:02:142028검색

laravel 프레임워크에서 입력을 받는 것은 매우 편리합니다. 다양한 입력 방법을 제공합니다.

다음과 같이 laravel의 IlluminateHttpRequest 인스턴스를 사용하여 요청을 수락합니다.

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());    
    }
}

요청 경로 및 요청 방법 가져오기

요청 방법 가져오기 매우 간단합니다. use 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

Getting input

다음은 모든 입력을 얻거나 단일 입력을 얻는 등 여러 측면에서 입력을 얻는 방법을 살펴봅니다. 입력의 일부를 가져옵니다.

모든 입력 가져오기

모든 입력을 가져오는 방법에는 all()과 input()이라는 두 가지 방법이 있습니다. 입력에 매개변수를 추가하지 않는다는 것은 모든 것을 받아들이는 것을 의미합니다.

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

입력 받기

입력을 받고 input 메서드도 사용하되, 얻어야 하는 필드를 나타내는 첫 번째 매개변수를 제공합니다. 값.

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

입력은 필드 값을 얻지 못할 때 설정되는 기본값인 두 번째 매개변수도 허용할 수 있습니다. 예:

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

또한 입력에서는 "."

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

연산자를 사용하여 숫자 값과 json 데이터를 얻을 수도 있습니다. 입력 방법 외에도 query 방법도 있습니다. 입력을 얻을 수 있지만 차이점은 입력은 양식과 쿼리 문자열에서 입력을 얻을 수 있는 반면 쿼리 메서드는 쿼리 문자열에서만 입력을 얻을 수 있다는 것입니다. 조회방법과 입력방법의 사용법은 동일하므로 여기서는 설명하지 않겠습니다.

동적으로 입력 받기라는 간단한 입력 받기 방법도 있는데, 속성을 통해 직접 입력을 받을 수 있습니다. 예를 들어, 양식에 이름 필드가 포함된 경우 다음 방법을 통해 얻을 수 있습니다.

$request->name;

그러나 Laravel은 먼저 요청 본문에서 매개변수를 찾습니다. 값이 존재하지 않으면 경로 매개변수에서 조회됩니다.

부울 값 가져오기

laravel은 필드 값을 가져와서 부울 유형 값으로 적극적으로 변환하는 함수를 제공합니다.

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

값이 존재하는지 확인

입력값이 존재하는지 확인하는 방법에는 여러 가지가 있으며 사용법이 약간 다릅니다. hasfilled를 모두 사용하여 입력 값이 존재하는지 확인할 수 있지만 차이점은 필드 값이 존재하는 한 has가 true를 반환한다는 것입니다. 채워져 있을 뿐만 아니라 비어 있어서도 true를 반환할 수 없습니다.

has는 여러 필드 값이 존재하는 경우 true를 반환하고, 그렇지 않으면 false를 반환하는 데 사용할 수도 있습니다.

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

그리고 hasAny는 필드 값이 하나인 경우에만 true를 반환합니다

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

부분 입력 받기

Laravel은 메소드만 사용하거나 제외하여 부분 입력을 얻을 수도 있으며 사용법과 기능은 완전히 동일합니다. 연관 배열을 반환합니다:

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

위 내용은 laravel HTTP 요청: 입력 정보 가져오기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.