タグ

ProgrammingとPHPに関するVoQnのブックマーク (4)

  • 三項演算子である条件演算子が右結合であることの利点・妥当性と可読性について - Guinea Pig

    条件演算子とは? 条件演算子とは、よく見るアレのことである。 bool b = true; string s = b ? "真" : "偽" ; // ここで出てくる ? と : が条件演算子 // ? の左が真であれば : の左を返し、 // ? の左が偽であれば : の右を返す。 // この場合 b が true なので (b ? "真" : "偽") は "真" を返す 右結合と左結合 んで、右結合、左結合というのは、同じ優先度の演算子が並んだ場合、それを右からまとめていくか左からまとめていくかと言うルールの話である。 // 左結合の例 int sub = 10 - a - b - c; // 左結合なので、以下の順番で解釈される // int sub = (((10 - a) - b) - c); // 右結合の例 x = y = z = 10; // 右結合なので、以下の順番で解

    三項演算子である条件演算子が右結合であることの利点・妥当性と可読性について - Guinea Pig
    VoQn
    VoQn 2016/11/22
    なるほどなー
  • PHPカンファレンス2014でHHVM/Hackの話を聞いて感動した - As a Futurist...

    使える言語の幅を広げたいと思ってPHP カンファレンス 2014に参加してきました。徳丸さんの「安全な PHP アプリケーションの作り方 2014」は改めて自分のセキュリティの知識を確かめるのに大変有意義だったのですが、何より感動したのが Facebook の Paul Tarjan による「HHVM + Hack == PHP++」のセッションでした。 すごく簡単に僕が理解した限りで HHVM/Hack を紹介すると、HHVM とは PHP の処理系の一つの実装です。その特徴は JIT コンパイルにより超高速になっていることに加え、圧倒的な魅力は PHP の Extension(C 拡張ライブラリ)の多くが実装されていて PHP のメジャーなフレームワークが問題なく動作するということです。つまりもう実践で戦えるということ。そして、Hack というのは HHVM が処理できるもう一つの言語

    PHPカンファレンス2014でHHVM/Hackの話を聞いて感動した - As a Futurist...
    VoQn
    VoQn 2014/10/12
    去年の時点でFacebookの98%をHackで書き直せてた、っていう話はすごいな。長年稼働してるシステムって色々あってそう手直しされづらい重苦しさあるのに
  • 典型的PHPerの13の悪癖

    はてな匿名ダイアリーで不穏なことが書かれていたが、職場などで見かけない事も無いので解説をつけて内容を転載しておく。 典型的な“嫌なタイプ”のPHP使いの特徴を「典型的PHPerの13の悪癖」というタイトルでまとめてあるものだ。PHP育ちの叩き上げの人が陥りやすい問題も含まれていると思うので、紹介したい。 1. パスワード認証sshでサーバーにログインし、vimemacsで開発をする。 PHPerは、生産性が低く、セキュリティ的に問題のある開発環境を愛用しているケースが多々ある。セキュリティ向上の為にはsshは公開鍵認証で使うべきだし、生産性向上のためには、一般的にはローカルに開発環境を用意して、Eclipse/PDT等の統合開発環境を使うべきであろう。 2. SVNなどのバージョン管理システムで、使い方が分からないのでブランチを切った事が無い。 開発ツールの学習に無頓着なPHPerは少な

    典型的PHPerの13の悪癖
    VoQn
    VoQn 2011/09/21
    チャーミング(色んな意味で)
  • PHP5.3.7のcrypt関数のバグはこうして生まれた

    昨日のブログエントリ「PHP5.3.7のcrypt関数に致命的な脆弱性(Bug #55439)」にて、crypt関数の重大な脆弱性について報告しました。脆弱性の出方が近年まれに見るほどのものだったので、twitterやブクマなどを見ても、「どうしてこうなった」という疑問を多数目にしました。 そこで、このエントリでは、この脆弱性がどのように混入したのかを追ってみたいと思います。 PHPのレポジトリのログや公開されているソースの状況から、PHP5.3.7RC4までこのバグはなく、PHP5.3.7RC5でこのバグが混入した模様です。RC5はPHP5.3.7最後のRelease Candidateですから、まさに正式リリースの直前でバグが入ったことになります。 バグの入る直前のソースは、ここの関数php_md5_crypt_rから参照することができます。以下に、おおまかな流れを図示します。まずはバ

    PHP5.3.7のcrypt関数のバグはこうして生まれた
  • 1