2017-09-01 6 views
0

のテキストファイルを読み取り、変数に鍵ペアの値を割り当てます。私はテキストファイルから値を正しく読むことができますが、$ variable1をエコーすることはできません。は、私は、テキストファイルを読み取り、右側値に左側の変数を割り当てるしたいテキストファイルを読み取り、PHP</p> <p>で可変で鍵ペアの値を割り当てるPHP

テキストファイル:

variable1="value91"; 
variable2="value92"; 
variable3="value93"; 
variable4="value94"; 
variable5="value95"; 

しようとしましたコード:

$myfile = fopen("/var/myfile", "r"); 
while (!feof($myfile)) { 
    $line = fgets ($myfile); 
    echo "$line<br/>"; 
} 
fclose ($myfile); 

これはライン値を出力し、解析することができますが、私は使用するたびにどのように私はそう値を持つキーを割り当てることができます。

問題:

echo $variable1; which will print "value91"? 

問題を解決するのを手伝ってください。私は確かに静的にはvariable1、variable2に値を代入することもできます。

+0

いつでもあなたの脳は、「動的ループで変数の命名」道を開始し、代わりに「アレイ」を考えます。ほぼすべてのプログラミング言語に当てはまります。 – JNevill

+0

いくつかのコードで私にヒントを教えてもらえますか? –

答えて

1

これにバグがある場合はお詫び申し上げます。私は長い間、PHPを書いていない。 (このために配列を使用してについての私のコメントに基づいて)、次のような何か:

$myfile = fopen("/var/myfile", "r"); 
while (!feof($myfile)) { 
    $line = fgets ($myfile); 
    $lineA = explode("=", $line); 
    $data[$lineA[0]]=$lineA[1];; 
} 
fclose ($myfile); 

配列にキーと行の値を破るためにexplodeを使用しました。

次に、新しい$dataアレイに、爆発のキーと値のペアを追加します。

今、あなたはあなたのファイルを閉じた後、あなたがキーに応じて自分の価値観を出すことができます。

echo $data["variable1"]; 

value91

1

をエコーすべきであるあなたがのターゲットとして文字列を使用する機能を使用することができます代入...

<?php 
error_reporting (E_ALL); 
ini_set ('display_errors', 1); 

$lines = file('data.txt', FILE_IGNORE_NEW_LINES); 
foreach ($lines as $line) { 
    $data = explode("=", $line); 
    $varName = $data[0]; 
    $$varName = $data[1]; 
} 

echo $variable1; 

割り当ては$$ varNameを使用しているため、変数の名前として最初の列が使用されます。

このoutputs-

"value91" 
関連する問題