[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[plamo:26610] simpleXMLのxpathでセグメンテーション違反



いずみ です。
Plamo4.03 に、くわむらさんのWEB+DB関連パッケージキットを
インストールして使っています。

今回、解説書を参考にPHP(5.0.5_0.4.3)でXMLファイル(UTF-8)を
処理するスクリプトを作ってみました。
XMLには日本語のタグが含まれているので、スクリプトの先頭で
 ob_start("mb_output_handler");
 mb_convert_encoding("UTF-8");
と宣言してから、処理を行っています。
処理といっても、simplexml_load_stringで取得したsimplexml_element
オブジェクトに対し、xpathメソッドでロケーションパスを指定して
データを取得するだけの簡単なスクリプトなのですが、

 php -f xpath.php 

のようにCLIで実行してみると、「セグメンテーション違反です」
というエラーメッセージを表示して異常終了してしまいます。
エラーの箇所を探っていくと、

 $result = $xml->xpath($node);

のところで発生していることがわかりました。
※$node は使用前にmb_convert_encoding でUTF-8に変換済み。

ちなみにPHP5が収録された他のディストリビューションで
(Suse9.3, Miracle4.0評価版)テストしてみたところ
そのような問題は発生しませんでしたので、PHP本体でなく
依存するライブラリの方に問題があるのかもしれませんが
自分の力では、それ以上追求できません。

Plamoのインストール後に、WEB+DB関連パッケージキット以外の
ソフトは何も追加しておりません。また、PHPのパッケージを
最新の5.1.0やHardenedパッチが適用される前のバージョン
(5.0.4_0.3.2)に変えても状況は変わりませんでした。
どなたか、似たような経験をされた方はいないでしょうか?
よろしくお願いいたします。


[検索ページ] [メール一覧]
Plamo ML 公開システム