2008/12/12

PHP で Notice: Undefined offset


PHPプログラムを納品したら、先方でHTTP 500エラーが出ました。
PHPのデバッグを有効にしてもらったところ
PHP Notice:  Undefined offset:
のエラーが出ていました。

ネットで調べたら
PHP で Notice: Undefined offset
というページを発見!
なるほど、確かに配列の要素を1つ追加したのに、一カ所修正漏れがあり
Hairetu= list(A, B, C)の配列に Hairetu[3]を読みに行っていました。

チェック環境ではエラーが出なかったんだけど…
⇒デバッグのレベルを変更して後で要チェック!

2008/12/10

MacPortsをインストール

あらかじめXcode Toolsをインストールする。

 MacPortsのHPでdmgをダウンロード。

ページ中段の【Mac OS X Package (.pkg) Installer】のはじめの部分にある「downloading the dmg for Leopard (Universal), Tiger (Universal) or Panther (PowerPC)」から自分のMac OS用のdmgをダウンロードする。
あとはダウンロードしたdmgをダブルクリックでインストール完了。

MacPortsは、MacPorts自身を含めたファイルをすべて/opt/local以下にインストールする。
各種パスを/opt/localに通しておくと便利。
だけど /opt/local/bin/port で実行できるから、PATHを通す作業は省略。

■MacPorts自身を最新の状態にアップデート
# /opt/local/bin/port -d selfupdate

■インストールできるソフトウェア一覧を更新
# /opt/local/bin/port -d sync これは定期的にやっておいた方が良いみたい。

■ソフトウェアのインストール
# /opt/local/bin/port install [ソフトウェア名]

■variantsの表示
MacPortsにはvariantsという仕組みがあって、インストールする際のconfigを選択することができるようになっている。
どんなvariantsがあるのかは
# /opt/local/bin/port variants [ソフトウェア名]
# /opt/local/bin/port install [ソフトウェア名] +[追加したいvariants] +[追加したいvariants]… と指定する。

■ソフトウェアのアップグレード
# /opt/local/bin/port upgrade [ソフトウェア名]

■ソフトウェアのアンインストール
# /opt/local/bin/port uninstall [ソフトウェア名]

■ソフトウェアのdeactivateとactivate
deactivateするとソフトウェアを削除せずに一時的に無効にする機能がある。
異なるvariantsを指定したある複数のバイナリを切り替えてためしたいときなどに便利。
# /opt/local/bin/port deactivate [ソフトウェア名]
戻す場合は
# /opt/local/bin/port activate [ソフトウェア名]

■インストール済みソフトウェアの表示
# /opt/local/bin/port installed
インストール済みソフトウェアをすべてアップグレード
# /opt/local/bin/port upgrade installed
アップグレード可能なソフトウェアの表示
# /opt/local/bin/port outdated

MacPortsからインストールできるソフトの一覧は
http://www.macports.org/ports.php