Download the PHP package kanagama/laravel-eloquent-method-expansion without Composer
On this page you can find all versions of the php package kanagama/laravel-eloquent-method-expansion. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download kanagama/laravel-eloquent-method-expansion
More information about kanagama/laravel-eloquent-method-expansion
Files in kanagama/laravel-eloquent-method-expansion
Package laravel-eloquent-method-expansion
Short Description Eloquent メソッド拡張
License MIT
Informations about the package laravel-eloquent-method-expansion
Eloquent Method Expansion
機能概要
php7.4 以上 Laraevel8.0 以上
Eloquent を拡張し、メソッドを追加します。
(※正確には拡張しているのは QueryBuilder なのですが、リポジトリ名を先に決めてしまっていたので…)
packagist
https://packagist.org/packages/kanagama/laravel-eloquent-method-expansion
使い方
composer でインストール
インストール後、下記メソッドが使えるようになります。
拡張 where 句
※ [columnName] にはテーブルのカラム名をアッパーキャメルで入力します。
where[columnName]IsNull(), orWhere[columnName]IsNull()
where[columnName]IsNull() メソッドは、columnName が NULL である条件を加えます。
where[columnName]IsNotNull(), orWhere[columnName]IsNotNull()
where[columnName]IsNull() メソッドは、columnName が NULL でない条件を加えます。
where[columnName]Eq(), orWhere[columnName]Eq()
※ AllowEmpty オプション対応
where[columnName]Eq() メソッドは、 パラメータの値が columnName の値と一致する条件を加えます。
where[columnName]NotEq(), orWhere[columnName]NotEq()
※ AllowEmpty オプション対応
where[columnName]NotEq() メソッドは、 パラメータの値が columnName の値と一致しない条件を加えます。
where[columnName]Gt(), orWhere[columnName]Gt()
※ AllowEmpty オプション対応
where[columnName]Gt() メソッドは、パラメータの値より大きい columnName の値となる条件を加えます。
where[columnName]Gte(), orWhere[columnName]Gte()
※ AllowEmpty オプション対応
where[columnName]Gte() メソッドは、パラメータの値以上の columnName の値となる条件を加えます。
where[columnName]Lt(), orWhere[columnName]Lt()
※ AllowEmpty オプション対応
where[columnName]Lt() メソッドは、パラメータの値より小さい columnName の値となる条件を加えます。
where[columnName]Lte(), orWhere[columnName]Lte()
※ AllowEmpty オプション対応
where[columnName]Lte() メソッドは、パラメータの値以下の columnName の値となる条件を加えます。
where[columnName]In(), orWhere[columnName]In()
※ AllowEmpty オプション対応
where[columnName]In() メソッドは、指定した配列内に columnName の値が含まれる条件を加えます。
where[columnName]NotIn(), orWhere[columnName]NotIn()
※ AllowEmpty オプション対応
where[columnName]NotIn() メソッドは、指定した配列内に columnName の値が含まれない条件を加えます。
where[columnName]Like(), orWhere[columnName]Like()
※ AllowEmpty オプション対応
where[columnName]Like メソッドは、columName の値の中にパラメータの値が部分一致する条件を加えます。
where[columnName]NotLike(), orWhere[columnName]NotLike()
※ AllowEmpty オプション対応
where[columnName]NotLike() メソッドは、columName の値の中にパラメータの値が部分一致しない条件を加えます。
where[columnName]LikePrefix(), orWhere[columnName]LikePrefix()
※ AllowEmpty オプション対応
where[columnName]LikePrefix() メソッドは、columName の値の中にパラメータの値が前方一致する条件を加えます。
where[columnName]NotLikePrefix(), orWhere[columnName]NotLikePrefix()
※ AllowEmpty オプション対応
where[columnName]LikePrefix() メソッドは、columName の値の中にパラメータの値が前方一致しない条件を加えます。
where[columnName]LikeBackword(), orWhere[columnName]Backword()
※ AllowEmpty オプション対応
where[columnName]LikePrefix() メソッドは、columName の値の中にパラメータの値が後方一致する条件を加えます。
where[columnName]NotLikeBackword(), orWhere[columnName]NotBackword()
※ AllowEmpty オプション対応
where[columnName]LikePrefix メソッドは、columName の値の中にパラメータの値が後方一致しない条件を加えます。
where[columnName]Date(), orWhere[columnName]Date()
※ AllowEmpty オプション対応
where[columnName]Date() メソッドは、columName の値と日付を比較します。
where[columnName]DateGt(), orWhere[columnName]DateGt()
※ AllowEmpty オプション対応
where[columnName]DateGt メソッドは、columName の値と日付を > で比較します。
where[columnName]DateGte(), orWhere[columnName]DateGte()
※ AllowEmpty オプション対応
where[columnName]DateGte() メソッドは、columName の値と日付を >= で比較します。
where[columnName]DateLt(), orWhere[columnName]DateLt()
※ AllowEmpty オプション対応
where[columnName]DateLt() メソッドは、columName の値と日付を < で比較します。
where[columnName]DateLte(), orWhere[columnName]DateLte()
※ AllowEmpty オプション対応
where[columnName]DateLte() メソッドは、columName の値と日付を <= で比較します。
where[columnName]Month(), orWhere[columnName]Month()
※ AllowEmpty オプション対応
where[columnName]Month() メソッドは、columName の値と特定の月を比較します。
where[columnName]MonthGt(), orWhere[columnName]MonthGt()
※ AllowEmpty オプション対応
where[columnName]MonthGt() メソッドは、columName の値と特定の月を > で比較します。
where[columnName]MonthGte(), orWhere[columnName]MonthGte()
※ AllowEmpty オプション対応
where[columnName]MonthGte() メソッドは、columName の値と特定の月を >= で比較します。
where[columnName]MonthLt(), orWhere[columnName]MonthLt()
※ AllowEmpty オプション対応
where[columnName]MonthLt() メソッドは、columName の値と特定の月を < で比較します。
where[columnName]MonthLte(), orWhere[columnName]MonthLte()
※ AllowEmpty オプション対応
where[columnName]MonthLte() メソッドは、columName の値と特定の月を <= で比較します。
where[columnName]Day(), orWhere[columnName]Day()
※ AllowEmpty オプション対応
where[columnName]Day() メソッドは、columName の値と特定の日を比較します。
where[columnName]DayGt(), orWhere[columnName]DayGt()
※ AllowEmpty オプション対応
where[columnName]DayGt() メソッドは、columName の値と特定の日を > で比較します。
where[columnName]DayGte(), orWhere[columnName]DayGte()
※ AllowEmpty オプション対応
where[columnName]DayGte() メソッドは、columName の値と特定の日を >= で比較します。
where[columnName]DayLt(), orWhere[columnName]DayLt()
※ AllowEmpty オプション対応
where[columnName]DayLt() メソッドは、columName の値と特定の日を < で比較します。
where[columnName]DayLte(), orWhere[columnName]DayLte()
※ AllowEmpty オプション対応
where[columnName]DayLte() メソッドは、columName の値と特定の日を <= で比較します。
where[columnName]Year(), orWhere[columnName]Year()
※ AllowEmpty オプション対応
where[columnName]Year() メソッドは、columName の値と特定の年を比較します。
where[columnName]YearGt(), orWhere[columnName]YearGt()
※ AllowEmpty オプション対応
where[columnName]YearGt() メソッドは、columName の値と特定の年を > で比較します。
where[columnName]YearGte(), orWhere[columnName]YearGte()
※ AllowEmpty オプション対応
where[columnName]YearGte() メソッドは、columName の値と特定の年を >= で比較します。
where[columnName]YearLt(), orWhere[columnName]YearLt()
※ AllowEmpty オプション対応
where[columnName]YearLt() メソッドは、columName の値と特定の年を < で比較します。
where[columnName]YearLte(), orWhere[columnName]YearLte()
※ AllowEmpty オプション対応
where[columnName]YearLte() メソッドは、columName の値と特定の年を <= で比較します。
where[columnName]Time(), orWhere[columnName]Time()
※ AllowEmpty オプション対応
where[columnName]Time() メソッドは、columName の値と特定の時間を比較します。
where[columnName]TimeGt(), orWhere[columnName]TimeGt()
※ AllowEmpty オプション対応
where[columnName]TimeGt() メソッドは、columName の値と特定の時間を > で比較します。
where[columnName]TimeGte(), orWhere[columnName]TimeGte()
※ AllowEmpty オプション対応
where[columnName]TimeGte() メソッドは、columName の値と特定の時間を >= で比較します。
where[columnName]TimeLt(), orWhere[columnName]TimeLt()
※ AllowEmpty オプション対応
where[columnName]TimeLt() メソッドは、columName の値と特定の時間を < で比較します。
where[columnName]TimeLte(), orWhere[columnName]TimeLte()
※ AllowEmpty オプション対応
where[columnName]TimeLte() メソッドは、columName の値と特定の時間を <= で比較します。
where[columnName]Column(), orWhere[columnName]Column()
※ AllowEmpty オプション対応
where[columnName]Column() メソッドは、columnName と指定したカラムの値が等しい条件を加えます。
where[columnName]ColumnGt(), orWhere[columnName]ColumnGt()
※ AllowEmpty オプション対応
where[columnName]ColumnGt() メソッドは、columnName が指定したカラムの値より大きい条件を加えます。
where[columnName]ColumnGte(), orWhere[columnName]ColumnGte()
※ AllowEmpty オプション対応
where[columnName]ColumnGt() メソッドは、columnName が指定したカラムの値以上となる条件を加えます。
where[columnName]ColumnLt(), orWhere[columnName]ColumnLt()
※ AllowEmpty オプション対応
where[columnName]ColumnLt() メソッドは、columnName が指定したカラムの値より小さい条件を加えます。
where[columnName]ColumnLte(), orWhere[columnName]ColumnLte()
※ AllowEmpty オプション対応
where[columnName]ColumnLte() メソッドは、columnName が指定したカラムの値以下となる条件を加えます。
where[columnName]Between(), orWhere[columnName]Between()
※ AllowEmpty オプション対応
where[columnName]Between() メソッドは、columnName の値が2つの値の間にある条件を加えます
where[columnName]NotBetween(), orWhere[columnName]NotBetween()
※ AllowEmpty オプション対応
where[columnName]NotBetween() メソッドは、columnName の値が2つの値の間にない条件を加えます
allowEmpty
allowEmptyオプション
where の後に AllowEmpty オプションを付与すると、パラメータが null や [] や 文字列の '' となる場合にその条件を省略します。
AllowEmpty チェックしている条件は下記の通りです
allowEmpty の使い所
管理画面(※予約管理画面など)では、予約者名、予約日、メールアドレス、電話番号、予約ステータス、その他多岐にわたる絞り込み条件が用意されていると思いますが、それを空かどうかチェックして空でなければ絞り込み条件に追加、というのを Eloquent で書くのは意外と労力が掛かります。
全部 if 文で囲むとかそんなんやってらんないよ、と思った際に使うのが AllowEmpty オプションです。
null や [] が渡された場合、その絞り込み条件を省略しますので、メソッドチェーンで全て繋げることが可能です。
AllowEmpty オプション利用不可
- where[columnName]IsNull()
- orWhere[columnName]IsNull()
- where[columnName]Null()
- orWhere[columnName]Null()
- where[columnName]NotNull()
- orWhere[columnName]NotNull()
- where[columnName]IsNotNull()
- orWhere[columnName]IsNotNull()
拡張 orderBy 句
orderBy[columnName]Asc()
orderBy[columnName]Asc() メソッドは、columnName の昇順で並び替えます。
orderBy[columName]Desc()
orderBy[columnName]Desc() メソッドは、columnName の降順で並び替えます。
orderBy[columnName]Field()
orderBy[columnName]Field() メソッドは、columnName の指定した順番で並び替えます。 null を末尾に配置するため、Desc が付与されます
開発コンテナ
PHPUnit コンテナ
PHP7.4 PHP8.0 PHP8.1 PHP8.2
※コンテナ起動時にテストが実行される