PHP2006年07月21日PHP文字出力のパフォーマンス比較について前から気になっていたのですが、PHPで文字を出力する際に、どのくらいパフォーマンスの差が出るのか、いろいろな手法で試している記事を見つけました。シングルクオート<ダブルクオート<ヒアドキュメント<printf関数(速いという順になるようです。高機能なものほど遅くなるようですね。msグラフは以下です。http://i3x171um.com/output_benchmarks/ob.gifソースコードも公開されています。|2006年07月14日DBの結果取得についてDBにクエリを発行して、結果を取得する場合、いくつかの関数が利用できます。結果を添字配列として取得するなどがあります。'42'");どの関数を使うかで、返り値が異なってきます。値DBのカラムをあとから付け加えたりすることを考慮に入れると、連想配列で返してくれる関数が利用しやすいと思います。SQLを発行し、結果が複数行返ってくることもありますが、その場合、結果の行すべてに対して処理を行うことが多いと思います。その場合には、mysql_fetch_arrayを使ってしまうと、「添え字」と「連想配列」で2回同じ処理が行われてしまう場合があります。いうことで、mysql_fetch_assocを私は最も良く利用しています。値の交換(swap)についてPHPにはswapという関数はありません。$aと$bの値を入れ替えたい場合って、結構ありますよね。通常は、3番目の値を一時的に使用して、以下のようにするのではないでしょうか。$temp;list関数をうまくつかえば、一行で書けます。$biggest);ちょっと便利、かと。list関数って普段あまり使われなさそうですが、たまには使ってみてはいかがでしょう。配列の値コピーについてPHPは基本的にバージョンが上がっても今まで作成したスクリプトはそのまま動くように作られています。一部、PHP4と5で挙動が異なっていることが報告されているケースもあるようです。配列$a1を配列$a2にコピーしたい場合。するとPHP4→値渡し(コピー)PHP5→参照渡しになってしまうそうです。$arr2=array_diff($arr1,array());とすれば、期待通りきちんとコピーされるようです。※PHP4.3.11で確認しました見た目おかしなプログラムになってしまいますが、PHPのバージョンが上がることを見越して、予め手を打っておきたいですね。Dream管理人もたまに書込みます。マニアックな文章はだいたい管理人のしわざです。2.0Seesaaブログ広告この広告は60日以上更新がないブログに表示がされております。以下のいずれかの方法で非表示にすることが可能です。「広告を表示しない」にチェックを入れて保存する。ブログ×この広告は180日以上新しい記事の投稿がないブログに表示されております。