PHPでジェネレータからArrayへの変換 yield構文からなるジェネレータを利用すると,値にアクセスする瞬間に値を計算するため,配列(メモリ)を大きく確保せずにイテレータが実装できます. function my_generator() { $fruits = … Aoi Watanabeハック2021.03.05 9
fzfを利用してコマンド履歴を遡る fzfはfuzzy finderの略で,フォルダやファイルを曖昧検索する機能を供えたコマンドラインツールです. https://github.com/junegunn/fzf ファイルの検索だけでなく,コマンド履歴の文字… Aoi Watanabeハック2021.03.04 15
シェルスクリプト(Bash)でのファイルのコピー シェルスクリプトでのファイルのコピーにはcpコマンドを使いますが,今迄丁寧に $ cp ./my_folder/my_file.txt ./my_foloder_my_file.txt.bak のように $ cp <… Aoi Watanabeハック2021.02.26 34
Git,リベースする際のコンフリクトを解消する. 前回の記事でマージする際のコンフリクトをCLIのみで行う方法を書きました。 ここではRebaseする際のコンフリクト解消法を同様に書いていきます。 現在の作業ブランチをdev、取り込みたいブランチをmainとします。 こ… Aoi Watanabeハック2021.02.25 26
Git,マージする際のコンフリクトを解消する. ブランチ(new-featuer)に変更を加えて,その後しばらく放置してmainブランチに幾つか他の変更を加えると,new-featureとmainとの間にコンフリクト(双方に同じところに差分を発生させてしまっている状態… Aoi Watanabeハック2021.02.19 32
SinonJSでMockに関するテストをかく Mockとはテスト対象が依存しているオブジェクトの置き換えとして動作し、テスト対象が適切に動作しているかどうかをシミュレートするためのオブジェクトです。 以下の例はSinonJSの公式のページから引っ張ったものです。 内… Aoi Watanabeハック2020.11.30 68
CakePHP(v3.x)、Paginationされているエレメントの全件数をView側で取得する。 Paginationを利用するとView側に送られてくるエレメントの総数はページ内に収まる総数以内となります。(20件とか) しかしView側ではクエリにヒットするエレメントの総数を知りたいシーンがあるので、ここではco… Aoi Watanabeハック2020.11.24 60
Frozen DateのParseを使って日付取得。 例えば、先月の初日の日付を取得したい場合、 $now = FrozenDate::now(); $first_day_of_last_month = now->subMonth(1)->fistOfMonth(); でも… Aoi Watanabeハック2020.11.10 64
CakePHP(v3.x)、BuildRulesを追加する。 Articleというモデルが存在するときに、Bakeしたあとに生成されるArticlesTable.phpファイル内に存在するBuildRulesにルールを追加することが出来ます。 デフォルトではモデルの関係性などに応じ… Aoi Watanabeハック2020.11.09 50