これは、私が「メンタルログファイル」と呼んでいるメッセージへの簡単なスクリプトです。私が漂流して仕事に戻るときの私の考えを追跡するためだけに。とにかく、ほとんどの場合は問題なく動作しますが、セグメンテーション違反が発生することがよくあります。それらはCで聞いたことがありますが、PHPではこれまでに一度もありませんでした。スクリプトは次のとおりです。
#!/usr/bin/php
<?php
$mental_log_file = "/home/ali/mental-log";
array_shift($argv); //get rid of the initial arg (name of the command)
$log_entry = date('j-n-y H:i') . ' ' . implode(' ', $argv) . "\n";
file_put_contents($mental_log_file, $log_entry, FILE_APPEND);
これが私がいくつかの実行で得たものです:
ali @ oem-desktop:〜$ mlog blah ali @ oem-desktop:〜$ mlog blah セグメンテーション違反 ali @ oem-desktop:〜$ mlog blah ali @ oem-desktop:〜$ mlog blah セグメンテーション違反 ali @ oem-desktop:〜$ mlog blah ali @ oem-desktop:〜$ mlog blah ali @ oem-desktop:〜$ mlog blah セグメンテーション違反 ali @ oem-desktop:〜$ mlog blah ali @ oem-desktop:〜$ mlog blah セグメンテーション違反 ali @ oem-desktop:〜$ mlog blah セグメンテーション違反
私がここで間違っている可能性があることについて何か考えはありますか?セグメンテーション違反が発生した実行でも、ファイルは期待どおりに正しく更新されているようです。私はUbuntu9.04Jauntyを実行しています。
ali @ oem-desktop:〜$ php --version PHP 5.2.6-3ubuntu4.1 with Suhosin-Patch 0.9.6.2(cli)(ビルド:2009年4月23日14:37:14) Copyright(c)1997-2008PHPグループ Zend Engine v2.2.0、Copyright(c)1998-2008 Zend Technologies
前もって感謝します。