学習ログ– category –
-
学習ログ
《PHP8上級試験対策》strtotimeで英文日付をUnixタイムスタンプに変換する仕組みとタイムゾーン挙動
はじめに PHP8上級試験では、日付操作やタイムゾーンの理解が問われることがあります。特に strtotime() 関数は便利ですが、タイムゾーン付きの文字列を渡した場合の挙... -
学習ログ
《PHP8上級試験対策》DateTimeクラスの使い方まとめ
はじめに PHPで日付・時刻を扱うとき、DateTime クラスは欠かせない存在です。上級試験でも「現在日時の取得」や「フォーマット出力」の理解は必須。この記事では、Date... -
学習ログ
《PHP8上級試験対策》Copy on Write(コピーオンライト)の仕組みとメモリ管理
はじめに PHPの配列や文字列は、代入や関数の引数で渡すときにいきなりメモリをコピーするわけではありません。この仕組みは「Copy on Write(COW)」と呼ばれ、PHPのメ... -
学習ログ
《PHP8上級試験対策》memory_get_usage() と memory_get_peak_usage() の違いを理解する
はじめに PHPのメモリ関連関数には、実行中のメモリ使用量を把握するためのツールが用意されています。特に memory_get_usage() と memory_get_peak_usage() は、メモリ... -
学習ログ
《PHP8上級試験対策》xdebug_debug_zval()で見るリファレンスカウントとis_refの関係
はじめに PHPの変数は「値のコピー」ではなく、「値への参照」を通じて扱われる場面が多くあります。特に&演算子で参照を作成したとき、内部的にどのような構造にな... -
学習ログ
《PHP8上級試験対策》unserialize() のコンストラクタ・デストラクタ挙動を図解で理解
はじめに PHP8上級試験では、オブジェクトのシリアライズ・アンシリアライズに関する問題が頻出です。特に「コンストラクタは呼ばれる?デストラクタは呼ばれる?」とい... -
学習ログ
《PHP8上級試験対策》serialize() / unserialize()でオブジェクトを保存・復元してみよう
はじめに データを「一時的に保存したい」「通信で送受信したい」とき、オブジェクトや配列をそのまま扱うことはできません。そんなときに活躍するのが serialize() と ... -
学習ログ
《PHP8上級試験対策》__serialize()と__unserialize()の動作を理解しよう
はじめに オブジェクトをシリアライズ/アンシリアライズするとき、その「直列化」や「復元」に介入したいときがあります。 PHP8ではそのための新しいマジックメソッド_... -
学習ログ
《PHP8上級試験対策》ファイルアップロード時に $_FILES[‘type’] を信用してはいけない理由
はじめに アップロードフォームを使えば、ユーザは自由にファイルをサーバに送信できます。しかし、送られてくるファイル名・拡張子・タイプ情報は、すべてユーザ側の情... -
学習ログ
《PHP8上級試験対策》複数ファイルアップロード時の $_FILES の構造を理解しよう
はじめに ブラウザのフォームからファイルを2つアップロードしたとき、PHPで $_FILES を var_dump() してみると、2つの配列が並んで表示されます。これが正しい挙動なの...