You are on page 1of 31

自己紹介

加納 悠史

いるとこ:株式会社ラクス
PHP歴:3年
Laravel歴:半年
Laravelの魅力とは
Laravelの魅力的な機能(一部)

ルーティングが DIコンテナが
使いやすい 便利な
容易
マイグレーション
Artisan
コマンド
充実した
強力な
メール機能
ヘルパ関数が 簡易な Middleware
たくさん クエリビルダ
全部使いこなせてる人
• 3択問題
• 基本機能からニッチな機能まで
第一問
ヘルパ関数 文字列操作

kebab_case("mySampleText");
=> "my-sample-text";

snake_case("mySampleText");
=> "my_sample_text";

title_case("mySampleText");
=> "Mysampletext";
Q1. 次のうち出力が以下のようになるもの
"my?sample?text"

A kebab_case("mySampleText", "?")

B snake_case("mySampleText", "?")

C title_case("mySampleText", "?")
Q1. 次のうち出力が以下のようになるもの
"my?sample?text"

A kebab_case("mySampleText", "?")

B snake_case("mySampleText", "?")

C title_case("mySampleText", "?")
ちょっと補足
snake_case()の定義

helpers.php

Str.php
もっと補足
kebab_case()の定義

helpers.php

Str.php
第二問
コレクション


collect([
['name' => 'img3.png'],
['name' => 'img20.png'],
['name' => 'img01.png'],
]); ソート
第二問
コレクション

[
2 => [
"name" => "img01.png",
collect([ ],
['name' => 'img3.png'], 1 => [
['name' => 'img20.png'], "name" => "img20.png",
['name' => 'img01.png'], ],
]); ソート 0 => [
"name" => "img3.png",
],
]
第二問
コレクション

[
2 => [
"name" => "img01.png",
],
0 => [
"name" => "img3.png",
],
1 => [
"name" => "img20.png",
],
]
Q2. 大きさ順になるものは?
$collection = collect([ ['name' => 'img3.png' ],
['name' => 'img20.png'],
['name' => 'img01.png'], ]);

A $collection->sortBy('name', SORT_NATURAL);

B $collection->sort(SORT_NATURAL);

C $collection->sort('name', SORT_NATURAL);
Q2. 大きさ順になるものは?
$collection = collect([ ['name' => 'img3.png' ],
['name' => 'img20.png'],
['name' => 'img01.png'], ]);

A $collection->sortBy('name', SORT_NATURAL);

B $collection->sort(SORT_NATURAL);

C $collection->sort('name', SORT_NATURAL);
ちょっと補足
sortBy()の定義

Collection.php
第三問
配列操作

last() → 配列最後の要素を取得
array_collapse() → 多次元配列を一次元配列に
array_add() → 配列に要素を追加
Q3. $ret の値はどれ?
$array = [ "keyA" => "AAA" ];
$ret = array_add( $array, "keyB1.keyB2", "BBB1.BBB2" );

A B
[ [
"keyA" => "AAA", "keyA" => "AAA",
"keyB1.keyB2" => "BBB1.BBB2", "keyB1" => "BBB1",
] "keyB2" => "BBB2"
]

C
[
"keyA" => "AAA",
"keyB1" => [
"keyB2" => "BBB1.BBB2",
],
]
Q3. $ret の値はどれ?
$array = [ "keyA" => "AAA" ];
$ret = array_add( $array, "keyB1.keyB2", "BBB1.BBB2" );

A B
[ [
"keyA" => "AAA", "keyA" => "AAA",
"keyB1.keyB2" => "BBB1.BBB2", "keyB1" => "BBB1",
] "keyB2" => "BBB2"
]

C
[
"keyA" => "AAA",
"keyB1" => [
"keyB2" => "BBB1.BBB2",
],
]
ちょっと補足
array_add()の定義

helpers.php

Arr.php
ちょっと補足
array_add()の定義

Arr.php
ちょっと補足
array_add()の定義

Arr.php
• 3択問題
• 基本機能 から ニッチな機能 まで
クイズを作ってみて
クイズを作ってみて

• 関数名がわかりやすくて処理が予想できる
クイズを作ってみて

• 関数名がわかりやすくて処理が予想できる

• 大抵のことはドキュメントに載っている
クイズを作ってみて

• 関数名がわかりやすくて処理が予想できる

• 大抵のことはドキュメントに載っている

クイズにならない
クイズを作ってみて
クイズを作ってみて

• 関数が直観的に理解できる

• 大抵ドキュメントに書いてある

• 内部実装も読みやすい
クイズを作ってみて

• 関数が直観的に理解できる

• 大抵ドキュメントに書いてある

• 内部実装も読みやすい

You might also like