。
我想读取文本文件,并将左侧变量分配给右侧值。我可以正确读取文本文件中的值,但不能回声$ variable1。
文本文件:
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"?
,如果无法动态使用文件,请在读取文本文件后,将值分配给变量1,variable2也肯定很好。
如果有错误,则道歉。我没有很长一段时间没有写PHP。类似以下内容(基于我对使用数组的评论):
$myfile = fopen("/var/myfile", "r");
while (!feof($myfile)) {
$line = fgets ($myfile);
$lineA = explode("=", $line);
$data[$lineA[0]]=$lineA[1];;
}
fclose ($myfile);
使用爆炸将线的键和值分解为数组。
然后添加到新的 $data
数组中的键/值对。
现在关闭文件后,您可以根据键将值算出:
echo $data["variable1"];
应该回声value91
您可以使用字符串作为分配目标的能力,所以...
<?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,因此使用第一列作为变量的名称。
此输出 -
"value91"