PGメモ

非エンジニアの記録

PHP高速化 インクリメントの種類

ループする時のインクリメントは「$i++」より「++$i」の方が早いらしい。 やってみた。 $c = 20000; for($i=0;$i $r = bm('loop_1',$c); $rary += $r; $ravg = $rary/$i; } echo $ravg;function bm($fn, $c) { $time_start = microtime(true); $fn($c); $tim…

PHP高速化 ループの種類

ループがめちゃめちゃ増えて遅い。回数は減らせないけど早くしたい、forよりwhileらしい。やってみた。 $c = 20000; for($i=0;$i $r = bm('loop_1',$c); $rary += $r; $ravg = $rary/$i; } echo $ravg;function bm($fn, $c) { $time_start = microtime(true)…

PHP高速化 ループ回数を減らす

ループがめちゃめちゃ増えて遅い。 なんて事があるので減らしたい、けど本当に早くなるのか。やってみた。20万回のループを100回まわして平均をとります。 $lcount = 200000;for($i=0;$i $r = bm('loop_1',$lcount); $rt += $r; $ravg_1 = $rt/$i; }for($i=0…

phpで実行時間を計測する

実行時間を計る方法。 $time_start = microtime(true);$time_end = microtime(true); $time = $time_end - $time_start; // 読みにくいので10桁に echo sprintf("%.10f",$time);

ファイル横断での置換

grep -rl "foo" . | xargs sed -i s/foo/var/g

mysqlのインポートで文字化けする

mysqlで文字化けする。ずっとutf8でやっていたが、eucの環境を構築しないといけなくなったのでやりました。まずはデータベースをUTF8からeucに設定変更 $ vim /etc/my.cnfutf8の所をujisに。 default-character-set=ujis skip-character-set-client-handshak…

apacheのテストページに強制的に飛ばされる

apacheの設定してサーバも動いてるのにどうしても強制的に飛ばされる。なんでかなと思った挙句、ドキュメントルートにindexがないからだった 凡ミス!

cakephp2.3 validateがまったく効かない

最近またcakephpを触り始めて、まったくvalidateが効かないという所でハマったわけです。条件にnotEmpty,requiredなどどんな条件を設定してもスルー。 けれどもsaveは動いている。どういうことだと...結局モデルのファイル名が間違ってました。 誤:UserMode…

arduino + felicaport でURLをプッシュする

先週あたりからarduinoをいじりはじめまして。 目的はfelica搭載携帯にURLをプッシュする事。いろいろ調べて2週間くらいかかってようやく事が実現できました お世話になった所 Arduino日本語リファレンス リーダライタ端末からの携帯ブラウザ起動等(三者間…

Solution of Codeigniter session redirect problem.

When session is gone if you use redirect, you need check "time" on server.

hetemlのsvnを使ってみたが、svn check outできない

svn

できなかった。 vim ~/.subversion/config の中にある [tunnels] ssh = ssh -p 2222 と書けば動いた。ポート指定してあげないとだめなのね。

vmwareplayerで名前解決できないとき

/etc/resolv.confを書き換えてみるべし

mysqlで走ってるクエリを見る

show processlist;上記で見る kill xxx;で止める。xxxはID

mysqlのsafe update modeはどう制限されているのか

mysqlを使っていて You are using safe update mode and you tried to update... と言われることがあるsafe update modeにおいて・検索条件がない(全指定 ・検索条件で指定した列に、インデクスが未定義上記の場合、update文が走らない

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がリモート側のポート…