PHP 7.0.2がリリースされたのでこのサイトもPHP 7.0.2にアップデートしました
TOP > てきとうにこらむ > このサイトについて。 > PHP 7.0.2がリリースされたのでこのサイトもPHP 7.0.2にアップデートしました
PHP 7.0.2 Released
PHP 7.0.2がリリースされました。というわけで、このサイトもPHP 7.0.2になりました。
おもろいアップデート
おもろいというか興味深いアップデートがありました。
Fixed bug #71092 (Segmentation fault with return type hinting).
https://bugs.php.net/bug.php?id=71092
タイプヒンティング関連のバグ。タイプヒンティングが成立していないとエラーが出るはずなのにSegfaultが出現する。Debianで再現できなかったしMacでの報告だったのでMacだけっぽい。
Test script:
---------------
File a.php :
<?php
declare(strict_types = 1);
function id() {
return ['id'];
}
function boom(): array {
$data = [id()];
switch($data[0]) {
case ['id'] : return;
}
}
set_exception_handler(function($e) {
require_once './c.php';
echo "plop";
});
boom();
?>
File c.php :
<?php
?>
Expected result:
----------------
I am supposed to be shown "plop" as a result.
Instead of that I get :
Fixed bug #70804 (Unary add on negative zero produces positive zero).
https://bugs.php.net/bug.php?id=66179
限りなく小さい値として扱うマイナス0が表現できない問題。すみません、今まで知りませんでした。「-0」って浮動小数点の世界では存在するのですね。PHP 5.6でも再現できました。
https://ja.wikipedia.org/wiki/%E2%88%920
Description:
------------
Given a negative number, it's possible to turn it into positive by just putting a positive sign in front of it.
Test script:
---------------
var_dump(round(-1e-99));
var_dump(+round(-1e-99));
Fixed bug #66179 (var_export() exports float as integer).
https://bugs.php.net/bug.php?id=66179
あっ…
$ php -r 'var_export(1.0);'
1