Top > PHP

PHP4

PHP7

GUI

プログラミング

ライブラリ

ツール

フレームワーク

キャッシュ

開発環境

内部

メモリ

Segmentation fault 時の調査

  • --enable-debug 付きでコンパイルしてログを眺める。
    • 注) php.ini で path を no-debug から debug に変更しないとダメ
      • error_log_server を見ればわかる事だが…
      • ちなみに path 変更を忘れる事で Seg fault を起こす事もあるので、再現できたと喜ばないように。^^;
  • http://bugs.php.net/bugs-generating-backtrace.php

魔改造

メモ

  • empty に '0' を渡した場合に true になる。(false を期待する事が多そう)
  • <?php の前のゴミ (UTF-8 だと BOM がゴミになる)
  • ?> の後のゴミ ?> は理由がなければ削るべき。
  • array_merge は key が数値の場合いn renumbering する。嫌なら + を使う。
  • 文字列と 0 の比較: 'test' == 0 が true になる事による地雷は結構ある。
  • 三項演算子の結合性が C や Javaと逆なので入れ子は厳禁。1つは許容すべき。
  • fgets/fputs の引数の順番が C と逆… 油断すると書き直すはめに。

Valgrind

その他

関連


Reload   Diff   Front page List of pages Search Recent changes Backup Referer   Help   RSS of recent changes
Last-modified: Sat, 29 Jul 2023 23:36:04 JST (265d)