PHP
自戒を兼ねて記事にします。内容はタイトルの通りなんですが知らずハマりました…… 結論 xor より代入のほうが優先順位が上なので $a に代入される値は xor が処理される前の値になります。 $a = true xor false; // true $a = false xor true; // false その…
概要 PHPUnit でモックを作成する際に、、モック対象となるメソッドを指定する際にsetMethodsを使っていると、これは現在非推奨とのことで代わりのメソッドを調べました。PHPStorm が教えてくれました… ありがとうございます 代わりのメソッド setMethodsは…
概要 先日 NFS でマウントしているストレージへのアクセス過多がボトルネックとなりサービスへのアクセスがしづらくなるという状態が発生しました。 調査の中で、サーバのプロセスをトレースするコマンドを使ってプロセスがアクセスしたファイルを取得、内容…
タイトルは自戒です。 概要 日本語(マルチバイト文字)に対してsubstr()を使用してDB保存時にエラーになってしまった… ※ DBは Postgresql です ERROR: invalid byte sequence for encoding "UTF8": 0x8b ちゃんとエラーになるんですね。賢い… 対処 日本語など…
ディレクトリ内の全ファイル削除 rmdir()はディレクトリが空でないと使えないため、事前にディレクトリ内のファイルをすべて削除しようと思い PHP のマニュアルを調べていました。 するとunlink()のページのコメント に下記のようなコードを発見。 array_map…
問題 以下のようなコードで catch で拾っているはずと思っていたエラーがそもそも拾えていませんでした。 try { // ここで関数の型不一致エラー発生 } catch (Exception $e) { // キャッチしたエラーをログに出力 } 原因 関数の型が不一致だった場合に発生す…