Это просто быстрый сценарий для сообщения о том, что я называю «файлом логического журнала». Просто следить за моими мыслями, когда я улетаю и возвращаюсь на работу. Во всяком случае, он работает хорошо в большинстве случаев, но каждый раз часто возникает ошибка сегментации. Слышал о них в 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('jny 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 Ошибка сегментации
Любая идея о том, что я могу делать неправильно здесь? Кажется, что файл корректно обновляется, как и ожидалось, даже на прогонах, которые приводят к ошибкам сегментации. Я запускаю Ubuntu 9.04 Jaunty.
ali @ oem-desktop: ~ $ php --version PHP 5.2.6-3ubuntu4.1 с Suhosin-Patch 0.9.6.2 (cli) (построено: 23 апреля 2009 14:37:14) Copyright (c) 1997-2008 PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
Заранее спасибо.