- 2024年9月9日
【PHP】Swooleを使って非同期でデータベースにクエリを投げる
PHPは同期的に実行されます。これはMySQLなどのデータベースを操作する時も同じです。クエリを投げた後PHPはデータベースから結果が返って来るのを待っているわけです。非同期実行 […]
PHPは同期的に実行されます。これはMySQLなどのデータベースを操作する時も同じです。クエリを投げた後PHPはデータベースから結果が返って来るのを待っているわけです。非同期実行 […]
PHPで日付を扱う際、特定の期間内の日付をループさせて処理したい時があります。これを素朴な$i = 0; $i < $n; $i++;的な数字ループでやろうとすると月をまたぐ時に […]
レンタルサーバー上で複数のWebサイトが稼働している場合や、一部プログラムのみPHPのバージョンを移行したい場合など、同じWebサーバーで異なるバージョンのPHPを動かしたくなる […]
PHPでは処理の中ではしばしばインスタンスのメソッドを呼び出したい時があります。この時、対象のインスタンスのメソッドが存在することが約束された状況で呼び出したくなります。もし次の […]
しばしば PHP で null 埋めされた連想配列を作りたい時があります。これは配列の未定義インデックス参照を避けつつ配列型の値を使いたい時に作る時が多いです。これを作る方法を紹 […]
レースコンディションは同時に実行される複数のプロセスが共有リソースにアクセスし、その結果が期待しない状態になる問題です。例えば、状態管理システムでほぼ同時に状態をを完了にするリク […]
和暦と西暦を変換する必要がある時がしばしばあります。最近の和暦のみであれば変換は比較的シンプルです。単に元号の切り替わった日付を保持し、その切り替わった範囲を目安にして年を変換す […]
ウェブページを読み込んだ直後にJavaScriptでDOMを操作すると画面がちらつくことがあります。これはブラウザがHTMLとCSSに基づいて初期描画を行った後にJavaScri […]
PHP の password_hash はパスワードを安全にハッシュ化するための便利な関数です。password_hash は使用アルゴリズムにPASSWORD_DEFAULTを […]
ほとんどのブラウザで期待通りに動作するのに一部のブラウザ、特に古いブラウザでSyntaxError: Invalid character: '#'というエラーが出てしまう場合があ […]
PHPUnitはテストツールです。よくGitHub Actionなどの自動フックと合わせて使用されていますが手動でも実行できます。自分の場合、作るべき機能をリストアップしてテスト […]
PHPStanは静的解析ツールでコードに潜むバグや潜在的な問題を検出することができます。例えば未定義変数、使用されていないコード、不整合な型の流れを検出できます。PHPStanを […]