HHeLiBeXの日記 正道編

日々の記憶の記録とメモ‥

2022-01-01から1年間の記事一覧

fopenに存在しないファイル名を指定したときの挙動

PHP

PHP 5.4.16からPHP 8.1.7にバージョンアップをしようとしたときのこと。

型宣言~float~

PHP

型宣言のfloat編。どこまで許容されるのか検証。 Main.php getMessage() . PHP_EOL; print $e->getTraceAsString() . PHP_EOL; return -1; } } class Hoge { private int $val; p…

型宣言~bool~

PHP

型宣言のbool編。どこまで許容されるのか検証。 Main.php getMessage() . PHP_EOL; print $e->getTraceAsString() . PHP_EOL; return false; } } class Hoge { private int $val; p…

型宣言~string~

PHP

型宣言のstring編。どこまで許容されるのか検証。 Main.php getMessage() . PHP_EOL; print $e->getTraceAsString() . PHP_EOL; return ''; } } class Hoge { private int $val…

型宣言~int~

PHP

型宣言のint編。どこまで許容されるのか検証。 Main.php getMessage() . PHP_EOL; print $e->getTraceAsString() . PHP_EOL; return -1; } } class Hoge { private int $val; public …

type hintingの改善(Type declarations/型宣言)

PHP

だいぶ昔に以下の記事を書いた。 hhelibex.hatenablog.jp それからだいぶ時が経ったものの、PHP 5.xの世界でずっと生きてきたので気付かなかった。 (英語) Type declarations (日本語) 型宣言 これによると、 英語 Type declarations can be added to functi…

オブジェクトの存在しないプロパティを参照したときの挙動

PHP

もしかしてオブジェクトの場合もか?ということで試したメモ。 Main.php a); var_dump($a->b); 実行結果。 $ for php in php56 php70 php71 php72 php73 php74 php80 php81 php82 ; do echo "===${php}===" ; ${php} Main.…

配列の存在しないキーを参照したときの挙動

PHP

PHP 5.4.16で動いているシステムをPHP 8.1.6に移行しようとしてハマったのだが、Smarty 2.xでは、error_reportingの値を書き換えてE_NOTICEを勝手に抑制していたことが発覚した今日この頃。 PHP 8.1.6にしてみるとどうにもWarningが止まらない。Smartyの未定…

オブジェクトに対するarray_key_exists関数呼び出しの代替策について

PHP

array_key_exists関数の第二パラメータにオブジェクトを渡すとエラーになるようになってから久しいが、PHP 5.4.16で動くシステムを最低でもPHP 7.3以降に上げなければならなくなったためにぶつかった壁の調査。 以下のようなコードをPHP 5.6.40/7.4.29/8.1.6…

令和4年3月21日

そうか今日は令和4年3月21日か和暦使ってるところで切符やレシートとって残しとくと記念になりそう— 上原 哲太郎/Tetsu. Uehara (@tetsutalow) 2022年3月20日 ということなので、遊んでみる。 import java.util.Calendar; import java.util.Locale; import j…