Movatterモバイル変換


[0]ホーム

URL:


はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマーク
  • テクノロジー
  • 【PHP8.0】非厳密な比較演算子`==`の挙動が今さら変更になる - Qiita
  • Twitterでシェア
  • Facebookでシェア

気に入った記事をブックマーク

  • 気に入った記事を保存できます
    保存した記事の一覧は、はてなブックマークで確認・編集ができます
  • 記事を読んだ感想やメモを書き残せます
  • 非公開でブックマークすることもできます
適切な情報に変更

エントリーの編集

loading...

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。

タイトルガイドライン

このページのオーナーなので以下のアクションを実行できます

タイトル、本文などの情報を
再取得することができます
コメントを非表示にできますコメント表示の設定

ブックマークしました

ここにツイート内容が記載されますhttps://b.hatena.ne.jp/URLはspanで囲んでください

Twitterで共有

ONにすると、次回以降このダイアログを飛ばしてTwitterに遷移します

224usersがブックマークコメント64

    ガイドラインをご確認の上、良識あるコメントにご協力ください

    0/0
    入力したタグを追加

    現在プライベートモードです設定を変更する

    おすすめタグタグについて

      よく使うタグ

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

        ガイドラインをご確認の上、良識あるコメントにご協力ください

        0/0
        入力したタグを追加

        現在プライベートモードです設定を変更する

        おすすめタグタグについて

          よく使うタグ

            はてなブックマーク

            はてなブックマークで
            関心をシェアしよう

            みんなの興味と感想が集まることで
            新しい発見や、深堀りがもっと楽しく

            ユーザー登録

            アカウントをお持ちの方はログインページ

            記事へのコメント64

            • 注目コメント
            • 新着コメント
            buhoho
            ご最もだけど、既存コードに盛大にバグ出そう。PHPのコードとか基本ゴミみたいなのばっかりだし

              その他
              strawberryhunter
              PHPは互換性を気にしないよね。一般的なプログラミング言語を書く事は投資に近いが、PHPを書く事は消費する事に他ならない、という格言を思いついた。

              その他
              tockri
              4、5を経てPHP7までついて行けてる人たちならこのぐらいの変更いける多分

                その他
                lyiase
                結構な非互換が出てくるPHPのメジャーバージョンアップだし、私的には全然構わないと思う。ぶっちゃけ、このPHPの謎型変換のルール(とくに 42 == "42foo" がtrueになる仕様)は結構面倒なバグを生んでたりしてたので良い選択。

                  その他
                  n314
                  "0" == "" はtrueになってほしいような、そうでもないような。直接if("0")とかif ("") とかが多いから問題ないのかな。

                  その他
                  tsekine
                  変更後はかなりキレイな仕様だと思う。これで動作が変わってしまうようなコード、PHP8への移行に関係なく元からかなりヤバいコードだと思う。

                    その他
                    tofu-kun
                    影響は大きいだろうけど、確かに PHP8 にあげることができるコード群は影響そんなに大きくない…かもしれない

                      その他
                      uunfo
                      これで問題が出るようなコードは普通は書かないでしょ。”true”と”0”を比較するってどんな状況よ

                        その他
                        mar33
                        web開発の魔窟WordPressテーマ界隈が荒れそう/ここまで来たらデフォルトでstrictモードとか静的型付けにしませんかね(過激派)

                          その他
                          kuroan
                          42 == "42foo" がtrueなのを知らなかった。なんぞ……

                            その他
                            trashtoy
                            ついでにマジックメソッド __equals() を導入して, "==" でオブジェクト同士の「等価性」チェックが出来るようにしてほしい ("===" による「同一性」チェックと使い分ける感じで)

                            その他
                            nawo_rs
                            理屈はわかるけど、思い切ったことするなあ。あいまいなコード書いてないつもりだけど、動かなくなるものあるだろうな……

                            その他
                            grover
                            古いコードの環境を変える時は注意。

                            その他
                            k-holy
                            まともなコードであれば影響なし、そうでないコードで不具合が放置されたまま偶然動いていた場合は…ってところか。個人的にはswitch文が使いやすくなる点で歓迎だけども、はてさて。

                              その他
                              kanehama
                              "==="ばっかつかうのでほぼ影響なし。42 == "42foo"は42 == (int)"42foo"でもだめになるかは気になる。

                                その他
                                deep_one
                                変なハックをしていると問題が発生しそう。個人的にはましになってる気がする。/まぁメジャーバージョンアップだと時々あるんだよね。まえにオブジェクトの扱いとか変わった気がする。

                                  その他
                                  kazuomabuo
                                  影響はあるだろうけど、プラスに働く影響だと思われる。

                                  その他
                                  rti7743
                                  流石に今更それを変えるのは危険だろう。過去に作られた膨大なウェブシステムやライブラリがあることがPHPの魅力の一つなのに、それを自ら否定するような変更はやめたほうがいいと思うけどなあ。

                                    その他
                                    onesplat
                                    だから言ってんだろ。まだPHP使ってる奴は今すぐ投げ捨てろ。最初の設計が悪すぎるものはいくら改善が積み重ねられようが必ず歪みが生まれるのでダメなんだよ。PHPを捨てるのに遅いなんてことはない

                                      その他
                                      sakuragaoka
                                      「正しい」挙動になったことはよいことで反論の余地はないのだけど、毎度互換性切り捨てすぎ。生まれから役割が変わりすぎてるので仕方ないとはいえ。だからPHPって嫌い。使うけど。

                                        その他
                                        kujoo
                                        正直、PHPには恐怖しか感じない(え?

                                          その他
                                          mayumayu_nimolove
                                          もういい、休め

                                            その他
                                            koogawa
                                            ほほーっ

                                              その他
                                              mar33
                                              mar33web開発の魔窟WordPressテーマ界隈が荒れそう/ここまで来たらデフォルトでstrictモードとか静的型付けにしませんかね(過激派)

                                                2020/08/03リンク

                                                その他
                                                Futaro99
                                                未だに==使ってるような古いプログラムはどうせ他の非互換で動かなくなる

                                                  その他
                                                  masa8aurum
                                                  いっそのこと `==` を廃止しよう(暴論)

                                                    その他
                                                    tailtame
                                                    『42 == "42foo"  true』どうして…Perl互換なのか~。わかりやすくなるからいいかも…と趣味PHPer(`・ω・´) 確かにphp5→php7の以降も面倒だからそれ乗り越えてたら余裕か。

                                                    その他
                                                    geerpm
                                                    wordpressどうなるんだろう。headless cmsの流れが加速しそう

                                                      その他
                                                      kagerou_ts
                                                      「そんなコードはそもそもPHP8では動かないだろうし、そしてバックエンドで動いているだろうPHP5が8にアップグレードされるなんてこともないだろうから、別に問題ないか」ア…ア…ア…

                                                        その他
                                                        khtokage
                                                        `42 == " 42"`→true、``42 == "42 "``→false、Stringに寄せるかNumericに寄せるかはっきりしろよ…… こんな訳分からんもの使いたくないし使ってないでしょ普通、と思ったけど、switchで強制的に使わされるとか苦行か。

                                                          その他
                                                          nakag0711
                                                          オプションで無効化指定できないの?

                                                            その他
                                                            punychan
                                                            「そんなコードはそもそもPHP8では動かないだろうし、そしてバックエンドで動いているだろうPHP5が8にアップグレードされるなんてこともないだろうから、別に問題ないか。」……問題なさげ。

                                                              その他
                                                              masa_w
                                                              流石にこの変更に引っかかるとは思いたくないな(微妙に弱気)

                                                                その他
                                                                zu2
                                                                “本RFCは賛成44反対1の圧倒的賛成多数で受理されました”

                                                                  その他
                                                                  YukeSkywalker
                                                                  false == 0 がtrueなのを何度教えたことか。

                                                                    その他
                                                                    delphinus35
                                                                    Perl民としては何がおかしいのかわからんので変える必要ないのでは感

                                                                      その他
                                                                      AKIMOTO
                                                                      過ちては改めるになんとやら。メジャーアップデートだしいいんじゃないか

                                                                      その他
                                                                      tsekine
                                                                      tsekine変更後はかなりキレイな仕様だと思う。これで動作が変わってしまうようなコード、PHP8への移行に関係なく元からかなりヤバいコードだと思う。

                                                                        2020/08/03リンク

                                                                        その他
                                                                        kabochatori
                                                                        jsの挙動と同じになったかな?まあどちらにしろ===使えって話だが

                                                                          その他
                                                                          taguch1
                                                                          最初でダメージを受けてもう読めない。すまん

                                                                            その他

                                                                            注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

                                                                            リンクを埋め込む

                                                                            以下のコードをコピーしてサイトに埋め込むことができます

                                                                            プレビュー
                                                                            アプリのスクリーンショット
                                                                            いまの話題をアプリでチェック!
                                                                            • バナー広告なし
                                                                            • ミュート機能あり
                                                                            • ダークモード搭載
                                                                            アプリをダウンロード

                                                                            関連記事

                                                                              usersに達しました!

                                                                              さんが1番目にブックマークした記事「【PHP8.0】非厳密...」が注目されています。

                                                                              気持ちをシェアしよう

                                                                              ツイートする

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

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

                                                                              ブックマークしたユーザー

                                                                              • techtech05212023/05/10techtech0521
                                                                              • wangeru2021/04/13wangeru
                                                                              • thotentry_hatebu1972020/12/12thotentry_hatebu197
                                                                              • termin22020/10/23termin2
                                                                              • trashtoy2020/08/28trashtoy
                                                                              • Y-Kanoh2020/08/16Y-Kanoh
                                                                              • nawo_rs2020/08/13nawo_rs
                                                                              • grover2020/08/12grover
                                                                              • diveintounlimit2020/08/11diveintounlimit
                                                                              • W53SA2020/08/09W53SA
                                                                              • mjtai2020/08/06mjtai
                                                                              • Kenji_s2020/08/05Kenji_s
                                                                              • sirosirocat2020/08/05sirosirocat
                                                                              • rakda32020/08/05rakda3
                                                                              • k-holy2020/08/04k-holy
                                                                              • kanehama2020/08/04kanehama
                                                                              • deep_one2020/08/04deep_one
                                                                              • attoku2020/08/04attoku
                                                                              すべてのユーザーの
                                                                              詳細を表示します

                                                                              ブックマークしたすべてのユーザー

                                                                              同じサイトの新着

                                                                              同じサイトの新着をもっと読む

                                                                              いま人気の記事

                                                                              いま人気の記事をもっと読む

                                                                              いま人気の記事 - テクノロジー

                                                                              いま人気の記事 - テクノロジーをもっと読む

                                                                              新着記事 - テクノロジー

                                                                              新着記事 - テクノロジーをもっと読む

                                                                              同時期にブックマークされた記事

                                                                              いま人気の記事 - 企業メディア

                                                                              企業メディアをもっと読む

                                                                              はてなブックマーク

                                                                              公式Twitter

                                                                              はてなのサービス

                                                                              • App Storeからダウンロード
                                                                              • Google Playで手に入れよう
                                                                              Copyright © 2005-2025Hatena. All Rights Reserved.
                                                                              設定を変更しましたx

                                                                              [8]ページ先頭

                                                                              ©2009-2025 Movatter.jp