プログラミング奮闘日記 PHP編16
今日も頑張っていく
ディズニーのBGMなんかをかけながらやっていこうと思います。
参考文献
毎度のことだけどしっかりと何を参考にしているか明記しておくよ
テックアカデミー教材
Googleさん
以上
本日のメモ
Carbonを使ってみる
本日はまずCarbonを理解するところから始めようと思った。
どうやら日付の処理うを行えるものらしく、時間も〇〇分前などを容易に出せるっぽい
http://cly7796.net/wp/php/using-the-carbon-in-laravel/
分前は書かれていないけど英語的にminuteでいける気がした
wherebetweenを理解したい!
wherebetweenがどうしても必要なので理解します
https://public-constructor.com/laravel-query-builder-where-clauses/#toc4
どうやらカラムが持つ値に対して範囲検索をできるっぽいですよ…
ロールバックしなければ泣
最悪の事態が起きてしまった。
カラムをミスって追加してしまったのだが、downのところに全てのカラムを削除する設定にしてしまってるので、ロールバックするとそれら全てのカラムが一時的に全て消えることとなってしまう泣
それだけならば再び作ればいいだけの話なのだが…実はそのカラム追加のテーブルがcronコマンドと連携しているので、そのテーブルのカラムを全消ししてしまうとcronコマンドがどこに入ればいいかわからなくなりパンクしてしまうかもしれないのだ!
恐怖
追記:自分の成長に感動しました。ロールバックの仕組みが分かっていたので1分ほどで訂正できました
Carbonを使用するときの注意事項
僕はこのミスによって悪夢をみそうです。
Carbonを使ってバックトゥザ・フューチャーをしてデータベースのtimestampと何かしらの行動をする際に、気をつけた方がいいのが
Carbonを使用するとCarbonオブジェクトが帰ってしまうということです。
もしwherebetween行動をする場合
->format('Y-m-d H:i:s');
を付け足さなくてはいけません。
https://www.yuulinux.tokyo/16821/
Property [point] does not exist on this collection instance. とかいう死ぬほどうざいエラー
解決策↘︎
https://qiita.com/Eryushidate/items/27b4a699c00d06e04744
こいつのせいで1時間くらい悩まされた
結論をいうと、。。Eloquentでデータベースからカラムを取り出すときには用心しろってこと
全てget()で取ってしまうと単一のプロパティでないのでfirst()にすべきっている話
とりあえずいっている事はほぼ分からないが、黙っていう通りにする