COOKIE
Laravel은 최하위 레이어의 쿠키 값을 암호화하고 서명을 위해 인증 코드를 사용합니다. 따라서 클라이언트가 쿠키 값을 수정하면 유효하지 않게 됩니다. 이렇게 하면 쿠키 위조에 대해 걱정할 필요가 없습니다.
쿠키 값 설정
쿠키 값 설정은 여기에서 간략하게 설명하는 라라벨 응답(Response)에 대한 지식을 사용합니다.
쿠키 함수를 사용하여 쿠키를 생성한 다음 응답 함수를 통해 클라이언트에 쿠키를 반환할 수 있습니다.
// cookie($name, $value, $minutes, $path, $domain, false, ...); $cookie = cookie('username', 'php.cn', 3600); return response('hello laravel')->cookie($cookie);
쿠키 함수를 사용하는 것 외에도 응답 인스턴스의 쿠키 메서드를 사용하여 설정할 수도 있습니다. 그리고 그것을 돌려보내세요. 이 메소드와 쿠키 함수의 매개변수는 일관됩니다.
return response('Hello World')->cookie( 'name', 'php.cn', 3600 );
쿠키 값 가져오기
쿠키 값을 가져오는 방법에는 두 가지가 있습니다. 이 두 가지 방법은 아래에 설명되어 있습니다.
use Illuminate\Http\Request; $value = $request->cookie('name'); // 或 use Illuminate\Support\Facades\Cookie; $value = Cookie::get('name');
업로드된 파일 가져오기
laravel 프레임워크는 업로드된 파일을 가져옵니다. 파일을 매우 간단하게 유지합니다.
업로드된 파일을 가져오는 방법에는 파일 방법과 동적 속성 방법을 사용하는 두 가지 방법이 있습니다. 이 메소드는 IlluminateHttpUploadedFile 인스턴스를 반환합니다.
$logo = $request->file('logo'); // or $logo = $request->logo;
물론 파일을 가져오기 전에 파일이 존재하는지 확인할 수 있습니다. 여기에서 hasFile 메소드를 사용하세요.
if ($request->hasFile('logo')) { $logo = $request->file('logo'); }
요청 요청 인스턴스는 업로드된 파일을 확인할 수도 있습니다.
if ($request->file('logo')->isValid()) { // }
uploadFile 인스턴스에는 업로드된 파일의 임시 저장 경로, 확장자 및 기타 정보를 얻기 위한 다양한 방법이 있습니다. 다음은 파일 형식 접미사
$logo = $request->file('logo'); $logo->path(); // png
를 얻는 방법을 보여줍니다. 마지막으로 저장 방법을 사용하여 파일을 저장합니다. 이 방법에는 첫 번째 매개 변수가 파일을 저장할 경로를 채우고 두 번째 매개 변수가 있습니다. 매개변수는 파일이 저장된 호스트(또는 타사 플랫폼)를 채웁니다. Laravel은 자동으로 파일 이름으로 고유 ID를 생성합니다. 이 정보는 다음과 같이 구성 파일 config/filesystems.php에 있습니다.
'disks' => [ 'local' => [ 'driver' => 'local', 'root' => storage_path('app'), ], 'public' => [ 'driver' => 'local', 'root' => storage_path('app/public'), 'url' => env('APP_URL').'/storage', 'visibility' => 'public', ], 's3' => [ 'driver' => 's3', 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'region' => env('AWS_DEFAULT_REGION'), 'bucket' => env('AWS_BUCKET'), 'url' => env('AWS_URL'), 'endpoint' => env('AWS_ENDPOINT'), ], ],
가격 요청 파일을 저장할 파일 이름을 직접 설정하려면 storeAs 메소드를 사용해야 합니다. 설정할 파일 이름.
$request->file('logo')->storeAs('img/logo', '1.png');
마지막으로 전체 파일 업로드 코드 예시를 게시하세요.
html 코드는 다음과 같습니다.
<form method="post" action="/index?a=32" enctype="multipart/form-data"> @csrf <input type="file" name="logo" > <input type="submit" value="sub" /> </form>
파일 코드는 다음과 같이 저장합니다.
if ($request->hasFile('logo')) { $logo = $request->file('logo'); if ($logo->isValid()) { $ext = $logo->extension(); $fileName = date('YmdHis') . mt_rand(10000,99999); $path = $logo->storeAs('img/logo', $fileName . '.' . $ext); dump($path); //"img/logo/2020121413351718218.png" } }
위 내용은 laravel HTTP 요청: 쿠키 및 업로드된 파일 가져오기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!