読者です 読者をやめる 読者になる 読者になる

waste of time

主にPHP

PHPのキャッシュ機構のおさらいと、opcacheの設定とかキャッシュクリアとか

PHPのキャッシュ機構 APC PHP: APC - Manual オペコードキャッシュ機能+データキャッシュ(ユーザキャッシュ)機能をもつ。現在は開発が停止されており、PHP5.5.0以降は以下2つのキャッシュ機構の使用が推奨されている。 APCu PHP: APCu - Manual APCからオ…

Laravel5.2.x EloquentORM

これまで2年弱、PHPでフレームワークといえばCakePHP2を使っていましたが、ここ2,3ヶ月ほど趣味でも仕事でもLaravel5を触っています。 Cake2.xからLaravel5.xに乗り換えて全然違うなぁと感じたのはDB操作周りです。いわゆるO/Rマッパーの使い勝手が結構違い…

VagrantにSSHログインしたときにアニメ放送情報を表示させる

今日放送のアニメなんだっけ?と仕事中に気になることはよくあるはず。 見逃せないアニメの日は残業せず帰りたい。 そんな感じの需要を満たすかもしれないソリューションです。 SSHログインしたときに何か表示する motd(message of the day)を使えば可能らし…

PHPでSeleniumWebdriverを操作してヘッドレス化したChromeを動かす

ajaxでコンテンツを生成しているページをスクレイピングしようと思ったので、WebDriverを試してみました。本来の用途(E2Eテスト)とは少し違うとは思いますが、使えるものは使う方向で。 gccのビルドとかで長くなったので、ajaxコンテンツを取得するとか本当…

PHPでRedis

Redisインストール CentOSへのRedisインストールメモ 上記記事を参考にRedisをインストール。なお、記事ではredis-2.8.12.tar.gzをwgetしていますが、最新版を使いたかったのでredis-stable.tar.gzをwgetしました。 $ cd ~/ $ wget http://download.redis.io…

PHPカンファレンス2015参加してきた

PHPカンファレンスに参加してきました。 年々参加者も増えており(参加費無料がでかい)、なんと今年は全館貸切だそうです。勢いを感じますね。 以下、聞いた発表について適当にまとめた感想入り混じりメモ。 PHPの今とこれから2015 みんなの使ってるバージ…

インデックスの効かないSQLを書き換えて一部PHPで処理させようとした話

ORDER BYとLIMITを含むSQLを吐き出すCakePHPのコードがある。 // HogeModel $params = array( 'fields' => array( 略 ), 'conditions' => array( hoge_id => Configure::read('HOGE_ID') ), order => array( 'created' => 'desc' ), 'limit' => $limit ); $r…

ConoHa(CentOS6.5)にxdebug入れる

# yum install php-pecl-xdebug Loaded plugins: fastestmirror, priorities, security Setting up Install Process Loading mirror speeds from cached hostfile * base: ftp.tsukuba.wide.ad.jp * epel: ftp.kddilabs.jp * extras: ftp.tsukuba.wide.ad.jp…

CakePHP2.5.4でフォームのバリデーションエラー時に指定したメッセージが出ない

最近ドットインストール見ながらCakePHP習得し始めたんですが、モデルに指定したバリデーションエラーメッセージと異なるエラーメッセージが表示されて困ってました。 Model array( 'rule' => 'notEmpty', 'message' => '必須入力項目です。' // ←これ表示…

PHP5.3.3からPHP5.5.17に上げたらMySQLが起動しなくなった

前エントリで苦労してPHP5.5系にアップデートしたのはいいんだけど、そのサーバで動いてたアプリケーションをPHPアップデート後に動かしてみたら以下の様なエラーが出た。 Warning: mysql_connect(): Can't connect to local MySQL server through socket '/…

PHPのバージョンを5.3.3から5.5系に変える

CentOSのバージョンは6.5、PHPのバージョンは5.3.3であることを確認。 $ sudo yum update $ cat /etc/redhat-release CentOS release 6.5 (Final) $ php -v PHP 5.3.3 (cli) (built: Aug 6 2014 05:54:27) Copyright (c) 1997-2010 The PHP Group Zend Engin…

PHP5.4から可能になった連想配列記法をPHP5.3.3で使ってエラー出てた話

昔作ったアプリケーションを久しぶりに動かしてみたらシンタックスエラーが出たので、ソースの該当箇所を見てみたら連想配列を以下のように指定していた。 $data = [ 'api_key' => $api_key, 'limit' => $limit, 'offset' => $offset ]; ばっちりとマニュア…

PHPのpublic, private, protected

アクセス装飾子 意味 public どこからでもアクセス可能 private 自クラスからのみアクセス可能 protected 自クラスとサブクラスからのみアクセス可能

Cannot use object of type stdClass as array

PHPでTwitterのトレンドを取得するプログラムで「Cannot use object of type stdClass as array」というエラーが表示されました。 PHP Error: Cannot use object of type stdClass as array - ふってもハレても にあるように、原因はオブジェクトを配列とし…