Vapor Trail

明るく楽しく元気よく

PHP

xhprofを試す

PHP

xhprofを試してみた。php8.1でも動く。 導入 github.com Dockerfileに追加 RUN git clone https://github.com/tideways/php-xhprof-extension.git \ && cd php-xhprof-extension \ && phpize \ && ./configure \ && make \ && make install php.iniに追加 ex…

NullObjectパターンを覚えた

出品者のデータにフィルタをかけて該当する出品者のSellerオブジェクトを返すメソッドがあるとします。 サンプルコード data = $data; } /** * 出品者の価格 * @return int */ public function price(): int { return $this->…

PHP+msmtpとMailCatcherをDockerで動かす

PHP+msmtpとMailCatcherをDockerで動かす 今までPHP+ssmtpとMailCatcherを使用していた。 WSL2にしてDockerを動かそうとしたら Package 'ssmtp' has no installation candidate と出てインストールできなかった。 ssmtpはメンテされていないことを知ったので…

PHP プロセスの多重起動を防ぐやり方

PHP

cronでPHPのタスクを定期的に起動したいが、すでにプロセスが動いている場合に起動しないようにしたい。 PHPのタスクを実行する前に確認するタイプ

Strategyパターン

Strategyパターン 目的 様々なアルゴリズムを、それが発生するコンテキストに応じて使い分けられるようにする。 問題 要求を行うクライアントや操作対象データによって、適用するアルゴリズムを選択する。 解決策 該当アルゴリズムの実装からアルゴリズムを個別…

Adapterパターン

Adapterパターン 目的 修正することのできない既存オブジェクトを、特定のインターフェースに適合させる。 既存のクラスを修正することなく、適切なインターフェース(メソッド)を追加することができる。 問題 使用したいデータや振る舞いが既存システム内に存在…

『良いコードを書く技術』を読んだ

良いコードを書く技術 ?読みやすく保守しやすいプログラミング作法 (WEB+DB PRESS plus)作者: 縣俊貴出版社/メーカー: 技術評論社発売日: 2011/04/09メディア: 単行本(ソフトカバー)購入: 46人 クリック: 2,459回この商品を含むブログ (68件) を見る 良い…

PHPで『テスト駆動開発』

今更感はありますけど、『テスト駆動開発』をコツコツ写経しています。PHPを使いたいのでPHPで書いているんですけど、本ではJavaで実装されていて12章あたりからちょっとつまづいてます。Javaではクラスをキャストしたり、プロパティに型書いたり、HashMapのキーに…