つぶデコ

装飾してツイートしよう

投稿一覧

ネストされた配列をチェックできます。複数指定も可能。
APIで取得したキーが存在するかチェックする場合などに使えそうですね。

#laravel
#駆け出しエンジニアと繋がりたい
#プログラミング勉強中

LaravelヘルパArr::has()連想配列のキーが存在するかドット記法でチェックuse Illuminate\Support\Arr;

$array = ['user' => ['name

APIなどでデータ取得する際にキーが返却されない場合などがあるので、デフォルト値が指定できるのは助かりますね。

#laravel
#駆け出しエンジニアと繋がりたい
#プログラミング勉強中

LaravelヘルパArr::get()ネストされた配列をドット記法で取得できるuse Illuminate\Support\Arr;

$array = ['user' => ['job' =>

withメソッドで取得したリレーションデータの一部を削除する場合なんかに使えそう

#laravel
#駆け出しエンジニアと繋がりたい
#プログラミング勉強中

LaravelヘルパArr::forget()ネストされた配列をドット記法で削除できるuse Illuminate\Support\Arr;

$array=['user'=>['id'=>1,'

空のファイルを作成する際によく使います。
タイムスタンプの更新を目的に使ったことは今までない。。。

#laravel
#駆け出しエンジニアと繋がりたい
#プログラミング初心者

Linuxコマンドtouch空のファイルを作成したりファイルのタイムスタンプを更新する
$ touch test1.txt  #test1.txtが存在する場合、ファイルのタイムスタンプを更新

以下のように使うとUserテーブルの名前だけをリスト化して取得できます。
Arr::flatten(App\User::select('name')->get()->toArray());

#laravel
#駆け出しエンジニアと繋がりたい
#プログラミング初心者

LaravelヘルパArr:: flatten()多次元配列を一次元配列に変換use Illuminate\Support\Arr;

$array = ['name' => 'Joe', 'ag

複数のキーを指定して要素を削除可能です。
PHP標準関数では「unset」でも同じ様に削除できます。
unset($array['name'],$array['age']);

#laravel
#駆け出しエンジニアと繋がりたい
#プログラミング初心者

LaravelヘルパArr::except()指定されたキーで配列要素を削除use Illuminate\Support\Arr;

$array = ['id' => 1, 'name' =>

Arr::divide(App\User::first()->toArray());
とすれば、DBから取得したデータを配列化して、キーと値に分割できますね。

#laravel
#駆け出しエンジニアと繋がりたい
#プログラミング初心者

LaravelヘルパArr::divide()配列をキーと値に分けるuse Illuminate\Support\Arr;

[$keys, $values] = Arr::divide(['id

複数テーブルから取得したデータを一つにまとめて、foreachなどで処理する場合に使えそうですね。

#laravel
#駆け出しエンジニアと繋がりたい
#プログラミング初心者

LaravelヘルパArr::collapse()複数の配列を一つの配列にまとめられる$array = Arr::collapse([
                  ['name'=>'yam

関数の紹介などに使えるテンプレです。
https://generator.tubudeco.com/g6595/

PHPでは
・array_merge()
・$array['price'] = 200;
でも連想配列に追加できます。

違いはArr::addでは値が上書きされません。

#laravel
#駆け出しエンジニアと繋がりたい
#今日の積み上げ

LaravelヘルパArr::add()キーと値のペア$array = Arr::add(['name' => 'Desk'], 'price', 100);
// ['name' => 'Desk

カラム追加の手順は以下
1.マイグレーションファイルを作成(php artisan make:migration ...)
2.画像の様にファイルを編集
3.マイグレーション実行(php artisan migrate)

#Laravel
#駆け出しエンジニアと繋がりたい
#プログラミング初心者

Laravel migrationでカラムを追加するpublic function up(){
    Schema::table('users', function($table) {

SQLのInsert文とLaravel Eloquentを比較してみました。

カラムが複数ある場合、Eloquentは
$user->fill($request->all());
と指定すれば保存できるので便利ですね。

#laravel
#sql
#駆け出しエンジニアと繋がりたい
#プログラミング初心者

SQLinsert into users(name) values ('yamada')Laravel↓Eloquent$user = new App\User();
$user->fill(['n

実行すると
'id','name','created_at','updated_at',
の用に出力され、Laravelのselectメソッドなどに指定できます。

最後に[,]が付くのがいまいちですが、変数代入などすれば簡単に消せますね。

#Laravel
#駆け出しエンジニアと繋がりたい
#プログラミング初心者

Laravelでカラム名を取得する方法//tinkerを実行して
php artisan tinker

//カラム名を取得する生のSQLを実行
$columns = DB::select(

migrationsテーブルのbatchカラムを元に実行
・--stepオプションなし
batchの一番大きい値をロールバック

・--step=n
batchカラムを降順にn個ロールバック
(a,b,c,d,eの順でマイグレーションを実行した場合、step=2だとe,dをロールバック)

#laravel
#駆け出しエンジニアと繋がりたい

最後のmigrationをまとめてロールバックphp artisan migrate:rollbackmigrationを一件のみロールバック(最後の1ファイルのみ適用)php artisan mig

関数リファレンスに使えるテンプレを作りました。
https://generator.tubudeco.com/g6579/

認証機能を実装したらauthヘルパは必須ですよね。
全てファサードでも使用できます。

#laravel
#駆け出しエンジニアと繋がりたい
#今日の積み上げ

auth()authenticatorのインスタンスを返すauth()->user(); //ログインユーザーの取得auth()->check(); //ログインしているかチェックauth()->id

Laravelマイグレーションのテーブル作成周りのコマンドです

全テーブルロールバックではなく、削除後にマイグレーションする場合は
・php artisan migrate:fresh
で実行できます

#laravel
#駆け出しエンジニアと繋がりたい
#プログラミング初心者

マイグレーション実行php artisan migrateマイグレーション実行時にシードも実行するphp artisan migrate --seed全てのテーブルをロールバック→マイグレーション実行

Laravelでテーブル操作の際に使用するartisanコマンドです
--create、--tableオプションを付けなくてもファイル生成できますが、付けると雛形が作成されるので便利です

#laravel
#駆け出しエンジニアと繋がりたい
#プログラミング初心者

マイグレーションファイル作成(テーブルを新規作成)php artisan make:migration [ファイル名] --create [テーブル名]マイグレーションファイル作成(テーブルを編集)p

シンプルでいいですね。
ちなみに「@guest」ディレクティブを使用した場合は「@auth」と逆。
ログインしていな場合に「true」を返します。

#Laravel
#駆け出しエンジニアと繋がりたい
#駆け出しデザイナーと繋がりたい

Laravel Bladeで認証状態をチェックできるディレクティブ@auth
 <p>ログインしています</p>
@else
 <p>ログインしていません</p>
@endauth