タグ

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

  • MySQLのFLOAT型を使う理由が見つからない件 - hnwの日記

    MySQLのデータ型としてFLOAT型という型があるのですが、これを採用するのは混乱の元ではないか?と感じたので、その詳細を紹介します。 そもそもこの話のきっかけは「MySQLで6桁までの小数点を丸めずに扱うならFLOAT型を使うべき理由」という記事が目に止まったことです。それなりに人気を集めている記事のようですが、私の読んだ限りではFLOAT型を使うだけの根拠が文中から読み取れず、さらに類似する一次情報や英語記事が全く見つからなかったので、真偽が怪しい情報だと感じました。 その後、MySQL上で実験したりCソースコードを読んでみたりした結果、私の得た結論は真逆のものになりました。MySQL警察の方や浮動小数点数警察の方、追試や反論など頂けると助かります。 MySQLのFLOAT型とは MySQLのFLOAT型は原則としてIEEE754浮動小数点数単精度型(32bit)で実現されます*1。

    MySQLのFLOAT型を使う理由が見つからない件 - hnwの日記
  • ワンライナーのためのPHPコマンドラインオプション - hnwの日記

    ワンライナー(1行スクリプト)の代名詞と言えばPerlでしょう*1。Perlにはワンライナー向けのコマンドラインオプションが多数用意されています。中でも-neオプションや-peオプションは強力で、入力行ごとの処理をループを使わずに簡潔に記述できます。Perlのワンライナー向けコマンドラインオプションの一部はRubyにも輸入されており、Rubyプログラマもワンライナーを書くことが多いように見えます。 それに比べるとPHPはワンライナーが書きにくい印象があるのではないでしょうか。僕もそう思っていましたが、実はPHP5.0.0からワンライナー向けのコマンドラインオプションが追加されています。それが今回紹介する-R、-F、-B、-Eです。 -Rオプション、-Fオプション -Rというのは、標準入力を1行ごとに順に処理するオプションです。例を見てみましょう。 $ ls bin/php-* bin/ph

    ワンライナーのためのPHPコマンドラインオプション - hnwの日記
    animist
    animist 2017/11/28
    PHP は機能ゴテゴテの関数いっぱいでキモいのだけどそのおかげでワンライナー書くの意外と便利だと思った
  • PHPのround関数の謎が少し解けた - hnwの日記

    2週間以上前の記事「PHPの奇妙なround関数」がすごいことになっていますね。最近書き始めたばかりの日記にこんなに人が来るなんて、有名人の集客力は流石だなあ、などと感心しています。 その集客力のおかげかもしれませんが、FreeBSDとMac OS Xだと挙動が違うよ、というコメントを頂きました。実際にFreeBSDで試してみたところ、確かにLinuxと異なる、いわばマトモな挙動です。その原因がわかりました、というのが稿の概要です。僕がモタモタ記事を書いている間に理由がわかっちゃった人も居るかとは思いますし、より詳細なところまで把握した人も居そうですが、僕なりに現時点でわかったことを書いてみます。 前回の記事で、PHP_ROUND_FUZZという定数が「少なくとも僕の手元の環境では」0.50000000001と定義されている、と書きました。この詳細を説明すると、configureスクリプ

    PHPのround関数の謎が少し解けた - hnwの日記
    animist
    animist 2015/10/07
  • GitHubへpull requestする際のベストプラクティス - hnwの日記

    みなさん、Git使ってますか?僕はまだメインのVCSがSubversionなのもあって、なかなか慣れません。せっかくGitを使っているのに、ちょっと不便なSubversionくらいの位置づけです。でも、同じような理解度の人って多いんじゃないでしょうか。 一方で、最近はGitHub管理のオープンソースプロジェクトが増えてきました。バグレポートを送るにしてもpull request*1が前提のような空気があり、Git初心者には少し敷居が高い印象があります。 そんな僕も先日初pull requestをしてみたんですが、色々な失敗の積み重ねで残念なpull requestになってしまいました。その反省を元に、稿ではpull requestする際のベストプラクティスを紹介します。これは「Git Workflow」をベースにコマンド例などを加筆したものです。 概要 pull requestする際は、

    GitHubへpull requestする際のベストプラクティス - hnwの日記
  • 1