PGメモ

非エンジニアの記録

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

PDOではINが使えない。なぜか

symfonyで直接SQLを書く事は珍しい事ではない 今日もSQLを直接書くよ! $sql="select * from hoge where id in(?,?,?)"; $sth = $con->prepare($sql); $sth->execute(1,2,3);しかし、こう書いても返ってくるのはidが1のレコードのみ。 なぜか。 bindされた後…

::execute() must be compatible with that of sfComponent::execute() in の対処法

symfony1.1以上でactionsが長くなってきたので分けたいと思ったので分けてみた。すると hogeAction::execute() must be compatible with that of sfComponent::execute() inというのが出た。 hogeAction extends sfActions { public function execute() { } …

APCを使ってみる

memcacheにも負けないと噂のAPCを使ってみる値を入れる60秒で消える apc_add($key, $value, 60); これで取り出す apc_fetch($key); 終わり。

symfonyでプラグインのシンボリックリンクをはる

./symfony plugin:publish-assets

swfmillで生成したxmlをひも解いてみる 短形置いてみた編

前回はシンプルはswfをxmlにしてみましたが、今回は短形ツールでシェイプを1つ作ってみました。 x座標が14、y座標が15、大きさが14pxの正方形です。前回と同様の部分は割愛します。以下はの後に出てきます <DefineShape5 objectID="1" nonScalingStrokes="0" scalingStrokes="1"> <bounds> <Rectangle left="270" right="570" top="290" bottom="590"/> </bounds> <strokeBounds> </strokebounds></defineshape5>

swfmillで生成したxmlをひも解いてみる シンプル編

swfmillはswfをxmlに変換することができます。 そのxmlを見てみることにした。 使用したのはcs5。swfmillのバージョンは0.2.12 とりあえずパブリッシュしただけのものをxml化してみた。 サイズは240x300、フレームレートは12、背景色は白 以下が全文 <swf version="10" compressed="1"> <Header framerate="12" frames="1"> <size> </size></header></swf>

PHPで可変関数を使う

php

public function foo($str) { echo $str; } $fnc = 'foo'; $fnc('var');varと出力されます

PHPでRFC3986エンコードする

php

str_replace('%7E','~',rawurlencode('http://foo.com'));

sql文を流し込む時に文字コード指定

--default-character-set=utf8

phpで時間の差を求める

php

gmdate("H:i:s", strtotime(時間1) - strtotime(時間2))

rsyncのオプション

転送の間の情報を詳しく表示する ・-v, --verboseファイルのタイムスタンプを転送して、リモートのシステムにあるファイルを更新する ・-t, --times転送中の情報を表示する -vと一緒に使うべし ・--progress ファイル転送時の統計情報を表示する ・--stats

criteriaで別名(as)を使う

$items = array(); $c = new Criteria(); $c->addSelectColumn("hoge.ID as HOGE_ID"); $c->addSelectColumn("hoge.NAME as HOGE_NAME"); $rs = HogePeer::doSelectStmt($c); while($r = $rs->fetch(PDO::FETCH_ASSOC)){ $items[] = $row; }といった感じ。 a…

PHPでランダム文字列を作る

php

function getRandomString($length = 8){ $list = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_"; mt_srand(); $r = ""; for ($i=0; $i<$length; $i++) { $r .= $list{mt_rand(0, strlen($list) - 1)}; } return $r; }

PAAMAYIM_NEKUDOTAYIMエラーの原因

php

PAAMAYIM_NEKUDOTAYIMってなぁに?

php

PAAMAYIM_NEKUDOTAYIM という文字がエラーの時に出てきた。なんて読むんだ。ぱあみゃいむねくどたいぇいむ?そしてどういう意味なんだ。 実はこれヘブライ語でダブルコロン「::」をこのように表記するそうだ なぜダブルコロンに Paamayim Nekudotayim という…

ポートフォワーディングを使ってmysqlにつなぐ

タイトルのままポートフォワーディングを使ってmysqlにつないでみます。 ssh -L 9999:127.0.0.1:3306 -N -f foo@var.jpL はローカルの設定するよってこと 9999がローカルサーバーでリスンするポート番号 127.0.0.1がリモートサーバ 3306がリモート側のポート…

mysqlのデータをcsvで出力する方法

mysqlに入り、DBを選択した後 select * from hoge INTO OUTFILE "tmp/fuga.csv" FIELDS TERMINATED BY ',' enclosed by '"' lines terminated by '\r\n';これでcsvとしてファイルが書き出される もし Access denied for user 'xxx'@'localhost' (using passw…

symfony1.4 生sqlを使う

public static function getCount() { $con = Propel::getConnection(); $stmt = $con->prepare("SELECT sum(foo) as count FROM var"); $stmt->execute(); while($row = $stmt->fetch()) { $r = (int) $row['count']; } return $r; }こんな感じ

phpからmemcacheを使う インストール編

下記コマンドで入れる yum -y install php-pecl-memcache下記で動いているか確認 php -i | grep memcacheエラーが出た場合、バージョンの問題があるのでバージョンを上げる pecl upgrade memcache

scp

scp -i secret.key 転送したいファイル username@host:転送先

ssh

ssh -l username host -i secret.key

sfFormでdatetimeにデフォルト値を入れる

フォームクラス内にて public function configure() { $this->setDefault('created_at', date('Y-m-d H:i:s', strtotime('now')); }ではダメで public function configure() { $this->setDefault('created_at', array( 'year' => date('Y',strtotime('now'))…

ssl.confがない時

yum install mod_ssl

ec2でAMIのバックアップ

ec2

x509証明書を転送後 cd /mntec2-bundle-vol -d /mnt --privatekey ~/pk-xxxx.pem --cert ~/cert-xxxx.pem --user xxxx-xxxx-xxxx --fstab /etc/fstabできたらs3に ec2-upload-bundle --bucket backetname --manifest image.manifest.xml --access-key xxxxx …

ec2にscpで入るため鍵をpemからppkにする手順

秘密鍵の保存を押す

ec2にpoderosaで入るため鍵をpemからsshにする手順

ec2

鍵をインポートでpemを読み込みssh.com形式で書きだす

プロジェクト作成時ORMにpropelを使用する

デフォルトだとドクトリン。 php /symfony/data/bin/symfony generate:project projectname --orm=propel

特定のファイルにアクセスきたら404

<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_URI} ^/hoge.html RewriteCond %{REMOTE_ADDR} !^127.0.0.1$ RewriteRule .* /404.php [L] </IfModule>127.0.0.1以外からアクセスあったら404

htpasswdを作る

# htpasswd -c ./hoge/htpasswd foovar

symfonyでbuild-modelとかすると自動生成の日付が更新されてうざい件

★目的 ./symfony propel:build-modelなんかするとべろべろっとファイルが自動生成されるわけだが、何も変更のないbaseファイルまで更新される。 その更新内容はなんと自動生成の日付だ。 そんなのけっこうどうでもいい。やめさせよう★調べた symfony/lib/plu…