2011-12-19 15 views
3

私はPHPで解析しているcsvファイル(本当に大きい)を持っています。csv解析、爆発回避 ""

今のようになりました。これを行う

x,"blah,blah,blah",z,value,etc 

x,y,z,value,etc 

が、時々、このあり内の "" 値も爆発するすべてのものの場合はexplode(',',$string);

array([0]=>x,[1]=>"blah,[2]=>blah,[3]=>blah"....) 

私はこれを持っているために何を行うことができます。代わりに

array([0]=>x,[1]=>"blah,blah,blah",[2]=>z....) 

おかげ

答えて

5

fgetcsvを使用し、爆発は使用しないでください。

文字列を解析する場合は、PHP> = 5.3の場合はstr_getcsvを使用してください。

0

私はあなたであり、その方法を使用しなければならないと言っています。引用符内のテキストの文字列を正規表現で解析します。

次いで、

で再度文字列を爆発など

*(例えば)

X、 "何とか*何とか*何とか"、Z値と、置き換え今すぐ適切な配列を取得する必要がありますが、今あなたはbla * bla * blaを持っています。

は、それからちょうど配列

そして、あなたが動作するはずという方法で...

あなたは(爆発によって、この場合には)..どのように解析するか、厳格なルールを持っている場合にのみ適用される上でstr_replaceを行います。