脳みそスワップアウト

揮発性なもので。おもにPHPのこととか。

2014-01-01から1年間の記事一覧

cakephp2でテスト用DBにインデクスが作成されない

CakeTestFixture にこう書いておけば、 本番用DBからテスト用DBにスキーマを取り込んでくれる。 要はテーブルをコピーしてくれる。 public $import = ['model' => 'ModelName']; でも、なぜかpkey以外のindexは無視されてしまう。 コピーしてくれたテーブル…

シークのできないFLVを再変換

何らかの要因で壊れてしまい、シークのできないFLVがある。 これはffmpegを使って再変換をすれば解消できる。 ffmpeg -i input.flv -vcodec copy -acodec copy -sameq output.flv 自分のストリームを動画で残そうとして気づいた。

vsftpdでFTPS(FTP over SSL) の設定

鍵ファイルは rsa_private_key_file で指定できる。 rsa_private_key_file=/PATH/TO/server.key 証明書は、中間証明書を指定する機能がないため、 2つのファイルをくっつけたものを用意してそれを証明書として指定する。 順番は 証明書→中間証明書 の順。 ca…

WindowsのFTPクライアントはPASVモードに対応していない。

概要 Windows標準のFTPクライアントはPASVモードに対応していない。 ACTIVEモードでは標準(20,21)以外のポートに接続することは現実的じゃない(NAT問題)。 Windows標準のFTPクライアントをターゲットにする場合、 FTPサーバは標準ポートかつACTIVEモードのも…

php-gdが動作していない

php

概要 「php-gdが動作していないのでなんとかして」の対応メモ。 CentOS-6.4 x86-64 php-5.5.4 5.5.4-1.el6.remi gd-last 2.1.0-0.10.725ba9d.el6.remi

Chef更新とcygwinから使うメモ。

概要 Chefの新バージョンが出ていたので新しく入れることにした。 Windows7 64bit Cygwin 1.7.32 32bit Chef 11.16.0 Windows版 直接関係はないけどVagrant, VirtualBoxもWindows版

composer dumpautoload

autoload関連の定義ファイルを最新にする。 composer.jsonでautoload定義を更新した場合などに実行する必要がある。 名前から想像しづらくてすぐ忘れる。 composerのバージョンにもよるが、以下のようなautoload関連のファイルが対象。 vendor/autoload.php …

PHPでSoap Client

PHPで久しぶりにSOAP接続することになった。 たまにしか使わなくて忘れていたのでメモ。

DateTimeImmutableにハマる

PHP-5.5から使えるようになった DateTimeImmutable クラス。 DateTimeとの違いは値が不変であること。 DateTimeInterface というinterfaceも追加されていて、 これを使えば従来のDateTimeとも透過的に扱える。 とても素敵なクラスだと思う。 コード内の日付…

sshd on windows (cygwin)

Windowsでsshdを動かす。Win7Pro 64bit。 ここでは Cygwin の openssh を使う。

Vagrant+VirtualBox で CentOS-6.5 のBoxを作るメモ

Vagrant+VirtualBox で CentOS-6.5 のBoxを作るメモ CentOS-6.5のboxを作ることになったが、6.4のときのメモを参考にした。 6.6の時にもまた参考にするだろうから残しておく。 2014/05/30。

Cygwin on Vagrant + chef-solo + Berkshelf インストール編

Cygwinが絡むと毎回色々悩んでいるのでメモ。Windows7 64bit Cygwin 1.7.25 32bit Vagrant 1.6.2 Windows版 VirtualBox 4.3.12.r93733 Windows版 Chef 11.8.0 Windows版 Berkshelf 2.0.16 Windows版Chefは元々入っていたのを使うので少し古め。 Berkshelfは…

Windows + Cygwin SSHD の環境変数問題

リモートにWindows + Cygwin SSHD環境がある。ここにssh接続して作業を行っているのだけど、 ssh経由でシェルを立ち上げると、Windowsの環境変数が一部しか引き継がれない。 これにより、一部ツールが動作しない事がある。(今回はBerkshelfで、NUMBER_OF_PRO…

ssh-agentとkeychain

手元のPC(cygwin)→リモート 手元のPCはどうせ電源を切るわけだし、ssh-agentが永遠に常駐してもいいと考えているので、 keychainを使っている。 keychain source ~/.keychain/$HOSTNAME-sh ssh-addこれでssh-agentが起動して鍵も読み込まれた状態になってい…

fuelphpをcomposerでインストール

fuelphpをcomposerでインストール業務で少し使っていたのだけれど、 近頃のコンポネント志向なframeworkなら、できることならライブラリ群をcomposerで管理したい。こちらの記事を参考に試してみたところ FuelPHP をもっと Composer で使う | chatii-log Web…

OCP(Open-Closed Principle)

the Open-Closed Principle.拡張については開かれている(open)が、 修正については閉じられている(close)、べきだという設計思想。既存のクラスを修正せずに拡張できるようにせよ。

その場限りのインスタンス

PHP-5.4から、こんな書き方ができるようになった。 インスタンスを変数に格納せずにメソッドを呼べる。 (new ClassName)->someMethod(); PHP-5.3以前はこのように一旦変数に格納する必要があり、面倒だった。 $obj = new ClassName(); $obj->someMethod(); …

PDTでよく使うショートカット

実行系 Alt+Shift+X H php実行 Alt+Shift+D H phpデバッグ Alt+Shift+X Q Ant実行 検索系 Ctrl+Shift+R クラス検索 Ctrl+J インクリメンタルサーチ Makegood Alt+M C コンテキストをテスト Alt+M F ファイルをテスト Alt+M R 直前のテストを再実行 エディタ …

命名メモ

英語の弱い自分のための命名に関するメモ decide(でぃさいど) 決心する。 複数の候補の中からひとつを選定する場合にいいかも。 candidate(きゃんでぃでいと) 候補 formula(ふぉーみゅら) 決まり文句。公式。 refine(りふぁいん) 洗練、改良。

エクスプローラの右クリックからcmd.exe/mintty起動

とあるディレクトリをshellで開きたいことがある。レジストリの以下のキーにREG_SZでコマンドを書けば、 エクスプローラ上でフォルダを右クリックして開くことができる。 HKEY_CLASSES_ROOT/folder/shell/任意の名前/command minttyの例 HKEY_CLASSES_ROOT/f…

64bit環境のWindows7でvimprocをビルド

Windows7 64bit cygwin 1.7.25 64bit GVim 7.4(kaoriya) 64bit vimproc 7.0 1. cygwinにmingwのgccを入れておく (mingw64-x86_64-gcc)2. make_mingw64.mak 内の gcc を mingwのgccに書き換える $ cd ~/.vim/bundle/vimproc $ diff -u0 make_mingw64.mak.org …

chef-solo 対象サーバの一時ファイル

$HOME/chef-solo/dna.json run_list /tmp/chef-scriptxxxxxxxx-xxxxx-xxxxxxx 実行中のbashやscriptリソース。 `ps -aux | grep chef` で出てくる。 /var/chef/cache/chef-stacktrace.out エラー発生時のStackTrace

cygwin + chef-solo のはまりどころ

SSH鍵のパスはWindows形式である必要がある。 knife solo prepare user@hostname -i "C:\cygwin\home\pen\.ssh\id_rsa" -Vknife solo cook user@hostname -i "C:\cygwin\home\pen\.ssh\id_rsa" \ -l debug nodes/phpci.jsonsudo設定で !requiretty がされて…

ExcelフレンドリなCSVをphpunit/dbunitで使う

phpunit/dbunitで、DBのテストデータをCSVで用意するのはよくやること。いまどきのアプリなら当然 UTF-8。 でも Excel は UTF-8 をまともに読み書きできない。Excel よりも UTF-8 に強いツールはある事はあるのだけども、 やっぱり操作感は Excel には敵わな…