2012-04-24 11 views
0

で値を見つけるには、私は次のようないくつかのコードを持っている:strpos:.iniファイル

if (strpos($stringt, $key . '=') === false) { 
    ...some code... 
} 

と特定のキー=値のペアは、.iniファイルに存在するかどうかを確認することになっています。 .iniファイルは、KEY =文字列の値で1行に1つの完全なPHP .iniファイルです。

長いキーに短いキーが存在すると、その行はfalseではなくtrueを返します。たとえば、キー/値PROBLEM =の問題が存在し、$ key = 'EN'を使用してチェックすると、$ strposが長い文字列 'HAPPEN ='内の 'EN ='と一致するため、ルーチンはtrueを返します。どのようにしてstrposを新しい行の先頭からキーにマッチさせることができますか( '\ n' $ key。 '='を試してもうまくいきませんでした)?

答えて

2
if (strpos($stringt, "\n" . $key . '=') === false) { 
    ...some code... 
} 

あなたはこれがおそらく私の.ini除いて働いていた代わりに'\n'

+0

ありがとうございます。魅力のように働いた。 – key2starz

2

私はPHPの組み込みのINIパーサーを使用します。

http://php.net/manual/en/function.parse-ini-file.php

print_r(parse_ini_file('yourinihere.ini')); 
+0

"\n"を使用していましたファイルは実際にはPHPの.iniファイルではなく、PHPの書式規則に厳密に準拠していません。 – key2starz

関連する問題