1

PHPを使用して、非常に大きなxmlファイルを解析してmysqlデータベースに挿入しようとしていますが、これは何ヶ月もうまく機能していますが、途中でスクリプトがxmlからいくつかのデータを収集し始めることを決定しましたスクリプトで後で処理できる配列に保存します。私が使用しているサーバーは 3GB RAM を備えた専用サーバーであり、必要な情報を標準配列に簡単に保存できると思いました。 memory_limit を 2500MB に設定しても、それに近づくべきではありませんが、PHP の配列はメモリ使用量に関して非常に非効率的であり、実行中のスクリプトの最後に向かって制限に達し、スクリプトの実行が停止することがわかります。

検索した後、試してみようと思った SplFixedArray と呼ばれるものに出くわしましたが、すべてのドキュメントには、それを使用するために必要なことは

$array = new SplFixedArray(5);

これを使用しようとしたときにのみ、実行しようとするとこのエラーが発生します

PHP 致命的なエラー: 6 行目の /home/rob/testscript.php にクラス 'SplFixedArray' が見つかりません

私はphp.netを含むあらゆる場所を見てきましたが、なぜそれが見つからないのかわかりません。何か不足していますか?

4

1 に答える 1

2

この問題は、PHP インストールが古すぎることです。

5.3 よりも新しいバージョンに更新すると、すべてが機能するようになります :)

于 2012-12-06T11:22:42.147 に答える