タグ: php7

PHP7.1でCodeIgniterを動かすならver3.1.2以上で

この記事はCodeIgniter Advent Calendar 2016の18日目です。 今月1日にPHP 7.1がリリースされました。PHP 7.1の変更点はマニュアルにまとまっています。 型に関する制御が数多く増えていて、PHPもどんどん”普通の”言語になっていくなぁという反面、負の文字列オフセットのサポートが入っているのには古き良きPHPらしいキモさを感じます。 CodeIgniterのPHP 7.1対応は3.1.2以上...

続きを読む

CodeIgniter3でのClockWrapperの簡易実装と、それに見るCI_Loaderクラスの可能性と限界(その1)

PHPでdate()関数を素朴に使うと日付またぎや秒単位のずれに悩まされることがあります。バッチ処理でデータベースのupdate_atがずれたり、たまたま23時59分58秒に実行開始して0時0分2秒で終わる、などの時です。 date()はデフォルトでその実行タイミングでの時刻を使用するので、2回以上実行するとき、その値が同じとは限らないのです。...

続きを読む

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;...

続きを読む

PHP7をCentOS7にインストールする手順

PHP7.0.0が正式リリースされましたーパチパチパチ。 というわけでCentOS7にインストールする手順を記します。 前提条件 サーバはConoHa OSはConoHaのCentOS7.1イメージ phpenvとphp-buildを使う php-fpm利用、unix-socketでlisten systemdで自動起動...

続きを読む

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

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

続きを読む
読み込み中