본문 바로가기
IT/PHP

PHP/Laravel(2) welcome.blade.php

by Sungjun_ 2020. 2. 19.

 

라라벨 설치를 완료했으면 User 폴더에 blog 폴더에 생겼을겁니다.

그러면 그 안에

이렇게 파일들이 생성됐을겁니다.

 

 

그 다음 visual studio code를 이용해

resources >> views >> welcome.blade.php 파일을 열어줍시다.

그러면 코드가 쭉 나올텐데 거기서

<div class="title m-b-md">
     Laravel
 </div>

이 부분을 찾아줍시다.

 

그리고 주소창에 http://localhost:8000/ 을 입력하시면

저렇게 화면이 나오실텐데

 

방금 찾아둔 div 박스의 Laravel을 지워주고 Hello World~ 를 입력해줍시다.

 

그럼 Lalavel 부분이 방금 입력한 Hello World로 바뀐 것을 볼 수 있습니다.

 

일반적으로 php를 사용해보셨다면 http://localhost:8000/welcome.blade.php

이런 식으로 입력해야 화면이 뜨시는 걸 알고있으실겁니다.

하지만 라라벨은 다르네요.

 

routes 폴더의 web.php 파일을 열어줍니다.

<?php

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return view('welcome');
});

그러면 이렇게 코딩이 되어있을겁니다.

 

여기서 보시면 '/'으로 홈페이지로 접근한 것을 확인할 수는 있는데 그 어디에서 welcome.blade.php가 보이지 않습니다.

return view('welcome')을 보시면 welcome이 있습니다.

view('welcome')이 welcome.blade.php의 역활을 하는 것입니다.

 

확실하게 확인하기 위해서

resources >> views 폴더에 index.blade.php 파일을 만들어줍니다.

<!DOCTYPE html>
<html lang="kr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
   <h1>Hello World~</h1>
</body>
</html>

이렇게 입력을 하고

web.php 파일을 다음과 같이 수정해줍니다.

<?php

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return view('index');
});

 

예상이 맞다면 welcome.blade.php 파일이 아닌 index.blade.php 파일이 열려 

화면에는 그냥 Hello World~ 가 출력 될 것입니다.

 

결과화면

기존에 나왔던 화면이 사라지고 Hello World~ 만 출력되는 것을 확인할 수 있습니다.

 

 

<!DOCTYPE html>
<html lang="kr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
   {{$hello}}
</body>
</html>

body 태그 안에 {{$hello}} 이렇게 입력해줍니다.

{{ }} 이것은 php에서 <?= ?> 이것과 똑같은 역할을 합니다.

 

그리고 web.php 파일을 다음과 같이 수정해줍니다.

 

<?php

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    $hello = 'Hello World';
    return view('index') -> with('hello',$hello);
});

 

이렇게 바꾸어 줬을때 화면에 출력돼야 하는 문구는 Hello World입니다.

확인해봅시다.

결과화면

정상 적으로 출력됩니다.

다른 방법으로

<?php

Route::get('/', function () {
    $hello = 'Hello World';
    return view('index',compact('hello'));
});

이렇게도 가능합니다.

 

 

<!DOCTYPE html>
<html lang="kr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
   {{$hello}} {{$name}}
</body>
</html>

이번에는 이렇게 입력해주고 

 

web.php를 아래와 같이 바꿔줍니다.

<?php

Route::get('/', function () {
    return view('index') -> with([
        'hello' => 'Hello~',
        'name' => 'Hong'
    ]);
});

이번에는 $hello와 $name을 만들어 화면에 출력합니다.

 

결과화면

 

정상 출력 됩니다.

 

다른 방법으로

view()의 두 번째 인자로 주어도 같은 결과를 얻을 수 있습니다.

<?php

Route::get('/', function () {
    return view('index',[
        'hello' => 'Hello~',
        'name' => 'Hong'
    ]);
});

 

마지막으로 하나의 변수에 저장하여 사용할 수 있습니다.

<?php

Route::get('/', function () {
    $index = view('index');
    $index -> hello = 'Hello World';
    $index -> name = 'Hong';

    return $index;
});

 

결과화면

 

다음에는 블레이드 관련 문법으로 포스팅하겠습니다.

 

 

 

 

기존 PHP만 써보고 라라벨을 쓰니까 전혀 다른 언어같네요...

'IT > PHP' 카테고리의 다른 글

PHP/Laravel(4) 컴포넌트&슬롯  (0) 2020.02.20
PHP/Laravel(3) blade 문법  (0) 2020.02.20
PHP/Laravel(1) 설치하기  (0) 2020.02.19
PHP(11) 리뷰 수정, 삭제  (0) 2020.02.19
PHP(10) 이미지 업로드  (3) 2020.02.17

댓글