カテゴリー: PHP

PHP, システム設計

[DDD] Value Object 値オブジェクト

  Value Object採用により仕様を豊かに表現する stringやintといった以上のバリデーションができる Value Objectのルール 「不変」であること ・setter()をつけてはダメ ・別の値が欲しい時は別途でnewする Clientクラス 呼び出し UserConstroller   Contextクラス(利用クラス) UserService FullN …

PHP

2つのCSVから値の重複を抽出するパフォーマンステストしたった

  2つのCSVから値をO(n^2)で比較するパフォーマンステストやったった🐱 配列の比較は数万件レベルの共通項抜き出す程度だったら20万件程度なら問題ならないね。   ●対象数 作成スクリプト make_csv.php         ●除外数作成スクリプト make_exclude_csv.php     ●比較スクリプト …

アルゴリズムとデータ構造, PHP

親の配列のループで子のコンテンツにアクセスするアルゴリズム

https://github.com/yuukanehiro/AlgorithmsDataStructure/blob/main/Sequence/ParentAccessChildContentsbyLoop.php     実務で良くあるアルゴリズム🐱 Collectionサイズが大きい時に省エネで使う。 $users = [ [ ‘id’ => 1, ‘email’ =&gt …

PHP

PHP preg_match() 正規表現で良く使うやつ

  数字かどうかの判定 PHPだと関数では数字の判定が困難なので、正規表現で判定する // 数字かどうかの判定 if (preg_match(“/^[0-9]+$/”, $target_string)) { // trueの処理 }   日付 yyyy-mm-ddの判定     // 日付のフォーマット yyyy-mm-dd の判定 if (preg_match(‘/ …

SQL, PHP

Laravel クエリビルダー 複数JOINとWHERE条件 query builder

  クエリビルダはあまり使わないのだけど、レコードの有無を取得する場合や集計処理なんかでは使うことがある🐱     生クエリがこうだとする   select * from `employee_emails` left join `employee_skills` on `employee_skills`.`employee_email_id` = `employee_ …

PHP

PHP explode()で空文字が想定される文字列に空配列を定義

  nullや空文字「””」or「”」が来る可能性がある場合   explode()を使うと空配列ではなく、へんてこなものが返却される🐱 $string = “”; $array_response = explode(‘,’, $string); の場合に$array_responseの中身が array(0 => “”) わけわからん形になって …

Tencent Cloud, PHP

PHP Tencent Cloud SDKでAPIを叩く

    今回のゴール このAPIを叩くのがゴール DescriptionBillBandwidthAndFluxList https://intl.cloud.tencent.com/zh/document/api/267/36098   API Keyを発行しよう 認証情報を利用してAPIを叩く必要があります。 https://console.cloud.tence …