タグ

ブックマーク / hnw.hatenablog.com (2)

  • PHPのround関数とは一体なんだったのか - hnwの日記

    (7/3 14:05追記)Javaに関する記述について誤認があったので盛大に書き換えました。Java 6、Java 7、Java 8それぞれで実装が変わっていたようです。 (7/13 23:55追記)記事中ではroundを四捨五入と言い切ってしまっています。これは筆者がC99のroundを基準に考えているためですが、言語によっては偶数丸めになっているround関数も珍しくありません。ご注意ください。 PHPのround関数について、ネット上で次のような記述を見つけました。 PHP 四捨五入の計算を間違える唯一の言語として畏れられていましたが、そのバグは治っているかもしれません(治ってないかもしれません) 主要なプログラミング言語8種をぐったり解説 - 鍋あり谷あり 各言語を面白おかしく紹介する内容とはいえ、ずいぶん雑な理解だなーという印象です。ゆるふわな話だけでPHPがdisられ続けるの

    PHPのround関数とは一体なんだったのか - hnwの日記
    miyadai454
    miyadai454 2016/07/03
    正確なものを作るのは大変そうだなぁ
  • PHPの文字列型は2GB以上の文字列を処理できない - hnwの日記

    (2015/6/12追記)PHP7から、64bit環境であれば2GB以上の長さの文字列が扱えるようになります。やったね! PHPの文字列型は、一般には文字列長の制限が無いとされています。PHPマニュアルにも次のように書いてあります。 注意: 文字列が非常に大きくなっても問題ありません。 PHP に課せられる文字列のサイズの実用上の制限はありません。 このため、長い文字列に関して恐れる必要は全くありません。 http://php.net/manual/ja/language.types.string.php しかし、実際には2GBが上限であり、これ以上のサイズの文字列を扱うと奇妙な現象が発生します。 <?php ini_set("memory_limit","2100M"); $str=str_repeat("xx",1073741824); // 2GB var_dump(strlen($

    PHPの文字列型は2GB以上の文字列を処理できない - hnwの日記
    miyadai454
    miyadai454 2015/06/12
    そうだったのか。まぁ2gb以上入れる機会はないだろうけど
  • 1