【PHP】知っておくとためになるPHPコーディングのTips

塵も積もれば山となる。プログラマの小さな気遣いがシステム全体のレスポンスに大きく関ってくる。 ・・・A型の人の心にしか響かないようなこの言葉。

PHPのコーディングをするときに知っておくとよいTipsがあったので紹介します。 ここに「echo VS print」や「ダブルクォート VS シングルクォート」など少しでもより速いコードを書くためのtipsがまとまっています。

ここにも独自に調べて解説が書いてあるので参考に。

すぐに実践しようと思ったTipsはこんな感じ。

  • (PHP5以降で)staticできるメソッドはstatic宣言する(4倍速い)
  • クラス内で定数代わりに使っている変数はconstする
  • ループの条件文には式を書かず、事前に変数に格納する(ループのたびに計算するのを回避)
  • 正規表現の処理は重い
  • なるべくもとから用意されている(PHPネイティブな)関数を使う
  • $row['id'] は $row[id] より7倍速い
  • インクリメント(1増やす処理)はローカル変数で行ったの方が速い
  • クラス内に10以上のメソッドがあってもパフォーマンスは変わらない

時間があれば社内のコーディングルールとしてまとめていきたい。

・・・そんな私はもちろんA型です・・・。

名古屋でプロのSEを目指す

コメント

  1. PHPの最適化というのがあるのですね、はじめて知りました。
    ようやくブラウザ上からLinuxを操作させるWebアプリの開発が終わりました。
    使用したOSはCentOS5ですが、IPアドレスを変更させるのが大変でした。
    LinuxではIPアドレスを変更するにはifconfigというコマンドがあるのですが、Linuxを再起動すると設定が変更前に戻ってしまうため、IPアドレスを変更するには/etc/sysconfig/network-scripts/ifcfg-xxx(xxxは適当)ファイルを編集してネットワークを再起動させる必要があるのを知りました。この処理をつくるのにstrtr関数を使用しましたが、最初はstr_replaceを使おうかなと思ったのですが選択はたまたま間違っていなかったかなと思いました。
    他にもパッケージをインストールする処理も作りましたが、やっぱり大変でした。。。それでもPHPははじめてだけれど、習得しやすい開発言語かな〜と思いました。

    返信削除
  2. ネットワークで設定するツールとしては、webminが有名ですが、もしご存じでなかったらそちらも参考にどうぞ。
    最近webminをインストールする機会があったので、ちょっとだけ記事を書きましたが、近いうちにアップする予定です。
    webminはperlで書かれているので、PHPに応用できそうですが、なんとも・・・。

    返信削除
  3. あのwebminはperlで書かれているのですね。。。知りませんでした。Webminは使ったことがありませんが、設定機能をすべて自分でPHPで開発するというのも面白いかもしれませんね。。Perlのソースは読めませんが、機能がわかれば開発できそうですね。。。

    返信削除
  4. つきつめていけば結局ファイルの編集とコマンドの制御だと思うので・・・と、ここでpearのパッケージでコマンド制御のライブラリがありそうだなと検索したら、「Console_CommandLine」というのを発見しました。
    メモメモ。

    返信削除

コメントを投稿

このブログの人気の投稿

【.NET】DataGridViewを選択した際に背景色を変更しない

【PostgreSQL】ROWNUMのように行番号(現在行)を取得するROW_NUMBER

Can't open PID file /var/run/nginx.pid (yet?) after start: Too many levels of symbolic links