タグ: php5

KUSANAGIに移設したらおよそ4倍速くなりました

発表以来勢いに乗っているKUSANAGIですが、サーバの中身がブラックボックスになるのはちょっとやだなぁと思っていました。 で、先日のWooCommerce開発者来日イベントでプライム・ストラテジー中村けん牛氏に「リバースエンジニアリングしていいですか」と尋ねたところ「GPLだからOKだよ」とのことで、それならもはやブラックボックスにあらず。サーバを移し替えてみました。およそ4倍速くなりました。 移設前サーバ ConoHa 1GB +...

続きを読む

浮動小数点数(float, double)はたいていの場合で使えない

PHPにかぎらず、float型とdouble型はたいていの場合で使えません。値が不正確だからです。 論より証拠 ググればfloatがダメな理由はいっぱい出てくるのですが、論より証拠です。 <?php $int = 0; $float = 0.0; for ($i = 0; $i < 10000000; $i++) { $rand = mt_rand(1, 1000); $int += $rand; $float += $rand / 10;...

続きを読む

第六回闇PHP勉強会に参加しました

11/22に開催された第六回闇PHP勉強会に参加してきました。「光の当たらないところ」という意味で闇であるとか。約1年半ぶりの開催ということですが、私ははじめての参加です。初めてなのにスピーカー参加です。以下、感想など。 各発表内容の感想 @hnwさん「OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた」 OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた from Yoshio Hanawa...

続きを読む

SQLite3::escapeString()はバイナリセーフではないが代替関数はない

SQLite3::escapeString()はバイナリセーフではないためnull文字を含む文字列を渡すと壊れますが、代わりの関数はなく、プリペアドステートメントを使う以外の方法が実質的にありません。 バグ報告はされている SQLite3::escapeString()がバイナリセーフではないことは数年前にバグ報告されていました。 https://bugs.php.net/bug.php?id=63419...

続きを読む
読み込み中