タグ

PHPとphp8に関するAKIMOTOのブックマーク (5)

  • マジカミはPHP8で速くなるか | GRIPHONE ENGINEER'S BLOG

    この記事は GRIPHONE Advent Calendar 2020 11日目の記事です。 サーバーサイドエンジニアのtackです。 最近リリースされたPHP8が爆速ということで、PHP7からPHP8にするとどれぐらい実行速度が早くなるのか、また、移行はどれぐらい大変なのかをStudio MGCMより提供されているマジカミを使って試してみようと思います。 サーバー環境 現在使われているサーバー環境は以下の様になっています。 PHP7系CodeIgniter3MySQLRedis これをPHP8.0にアップデートして、パフォーマンスを比較していきます。 PHP 8.0.0 (cli) (built: Nov 24 2020 17:04:03) ( NTS gcc x86_64 ) Copyright (c) The PHP Group Zend Engine v4.0.0-dev, Cop

    マジカミはPHP8で速くなるか | GRIPHONE ENGINEER'S BLOG
  • PHP: rfc:match_expression_v2

    This RFC proposes adding a new match expression that is similar to switch but with safer semantics and the ability to return values. From the Doctrine query parser: // Before switch ($this->lexer->lookahead['type']) { case Lexer::T_SELECT: $statement = $this->SelectStatement(); break; case Lexer::T_UPDATE: $statement = $this->UpdateStatement(); break; case Lexer::T_DELETE: $statement = $this->Dele

  • 【PHP8.0】非厳密な比較演算子`==`の挙動が今さら変更になる - Qiita

    結果は順にtrue、true、falseです。 これがPHP7までの非厳密な比較(等価)演算子だったわけですが、まあおかしいよねってことで、この挙動がPHP8.0で変更になることになりました。 よもや今さら基中の基である比較演算子の動作を弄ってくるとは思わなかったぞ。 以下はSaner string to number comparisonsの日語訳です。 PHP RFC: Saner string to number comparisons Introduction ==やその他の非厳密な比較演算子を用いた文字列と数値の比較は、現在は、文字列を数値にキャストし、その後整数か浮動小数の比較を行っています。 この結果、多数の不可解な結果が得られますが、中でも注目すべきは0 == "foobar"がtrueになることです。 このRFCでは、文字列が実際に数値型文字列である場合にのみ数値型

    【PHP8.0】非厳密な比較演算子`==`の挙動が今さら変更になる - Qiita
    AKIMOTO
    AKIMOTO 2020/08/03
    過ちては改めるになんとやら。メジャーアップデートだしいいんじゃないか
  • 【PHP8.0】PHPにヌルセーフ演算子が導入される - Qiita

    $user = null; echo $user->address->country ?? ''; PHPのプロパティは元よりnull安全なので、存在しないプロパティだろうがnullだろうがプリミティブ型だろうがいきなりプロパティを取り出せます。 取れない場合はE_NOTICEが発生しますが、??を使えば黙殺できます。 しかしメソッドはだめです。 echo $user->getAddress()->getCountry() ?? ''; // Fatal error: Call to a member function getAddress() // 1 if (method_exists($user, 'getAddress')) { if (method_exists($user->getAddress(), 'getCountry')) { echo $user->getAddres

    【PHP8.0】PHPにヌルセーフ演算子が導入される - Qiita
  • PHP8.0.0α1がリリースされたのでさっそくJITの威力を体感する(した) - Qiita

    当かよ????????? まずPHP7.4.7からPHP8にアップデートするだけで処理時間が1割削減されています。 ただでさえ新機能てんこ盛りだってのに、そのうえ速度も上がるとかどうなってるんだPHP8。 次いでopcacheを有効にすると処理時間が半分になります。 最後にJITを有効にしたら、処理時間がopcache有効状態の30%になりました。 30%縮まりました、ではありません。 なんだこれ。 ということで、JITを有効にするだけで、処理時間がPHP8デフォルト設定の13%になりました。 どういうことかというと、元々1分かかっていた処理が8秒で終わるようになります。 足枷を外したとかいうレベルじゃねーぞ。 これ当に計算してるのか? 計算結果が固定値だから結果だけどこかに保存してるとかじゃないよな? しかもこれ、opcacheやJITの設定はほぼ初期値で、とりあえず有効にしただけと

    PHP8.0.0α1がリリースされたのでさっそくJITの威力を体感する(した) - Qiita
  • 1