Closed6

Laravelを初めてさわったのでメモ

はじめに

環境構築に関しては触れません。今回作成しようとしているものではデータベースを使用しないのでデータベースに関しては触れません

開発環境

Laravelのバージョン:8.15.0
OS:windows10
エディタ:VisualStudioCode
ターミナル:PowerShell

Webサーバー

LOLIPOP! スタンダードプラン

プログラム経験

phpを触って簡単なwebアプリケーションを公開
C,C++を利用したプログラム作成

このスクラップの運用方法

Laravelを触りながら頭の整理として書いていきます。間違いやアドバイスなどありましたら教えていただけるとありがたいです

Github

https://github.com/YU9-30/semiorder_suzuri

リンク集

https://readouble.com/laravel/8.x/ja/

コマンドメモ

使う回数が多そうなコマンドを随時メモしていきます

コントローラー作成

php artisan make:controller HogeController

モデルの作成

App/Models/hoge.phpを作成する場合

php artisan make:model hoge

サーバーを立ち上げる

php artisan serve

キャッシュの作成、削除

作成

php artisan config:cache

削除

php artisan config:clear //キャッシュの削除

基本的なこと

MVCモデル

  • Model(データベースを用いたやり取り)
  • View(画面表示)
  • Controller(処理)

動作

ルーティングで、コントローラーと実行する関数を決める。
コントローラーで、必要な処理をphpで記述する。
ビューで処理をもとに画面を表示する。

Controller | コントローラー

コントローラーを作成する

php artisan make:controller HogeController

生成されたファイルに処理を記述

App\Http\Controllers\HogeController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;

class HogeController extends Controller{
    public function index(){
        /* 処理を記述 */
        return view('pages.index'); // resources/views/pages/index.blade.php を表示する
    }
}
?>

Routing | ルーティング

routes/web.php
<?php
use App\Http\Controllers\HogeController; // 使用するControllerまでのパスを記述
use Illuminate\Support\Facades\Route;

Route::get('/', [HogeController::class, 'index']);
/* https://test.com/にアクセスしたら、HogeControllerのindex関数を実行 */
?>

laravelのバージョンによっては記述の仕方が異なります(8以上だとこの記述でいいらしい)

View | ビュー

ファイル名は必ず〇〇.blade.phpとすること

resources/views/pages/index.blade.php
<?php
  echo 'hello world';
?>

環境変数

環境変数を定義する

.envに記述することで環境変数を定義します。

API_KEY="123456789"

環境変数を利用する

環境変数をhogeapi.phpに以下のような記述を追加して設定ファイルを追加する。

config/hogeapi.php
<?php

return [
    /* 
    |--------------------------------------------------------------------------
    | User defined environment
    |--------------------------------------------------------------------------
    |
    |
    */
    'api_key' => env('API_KEY'),
];

?>
App\Http\Controllers\HogeController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;

class HogeController extends Controller{
    public function index(){
        $hoge_api_key=config('hogeapi.api_key'); //config/hogeapi.phpのapi_keyの値を読み込む
        /* 処理を記述 */
        return view('pages.index', compact('hoge_api_key')); // resources/views/pages/index.blade.php を表示する
    }
}
?>

configフォルダに保存されていないファイルからenv関数を用いると以下のコマンドでキャッシュを作成した場合、.envファイルが読み込まなくなるためこのようにしています。

php artisan config:cache

参考にさせていただきました

https://tektektech.com/laravel-environment-variable/#i-2

データベース

データベースの準備

モデル作成

php artisan make:model hoge

マイグレーション作成

php artisan make:migration create_hoges_table
このスクラップは2020/12/14にクローズされました
ログインするとコメントできます