我想知道如何从文本文件中读取数组的第一部分。这是代码:
array.txt
Array
(
[0] => something
[1] => another
[2] => other
)
上面的部分是我的文本文件。该文件名为array.txt。我希望能够读取数组的第一部分,可以通过数字零来识别。这是代码:
$arrayOne = "";
foreach(file('array.txt') as $line) {
$arrayOne .= $line;
}
//echo $arrayOne;
print_r($arrayOne);
上面的代码从文件中读取每一行,并打印或回显文件中的内容。我遇到的问题是当我尝试显示数组的第一部分时,而不是获取something
我最终获得字符串的第一部分A
。这是代码:
echo $arrayOne[0];
// Outputs: A
如何从数组中读取第一部分?
答案 0 :(得分:0)
当你读取文件时,它只作为文本处理,它不知道它是一个数组。将文件保存为JSON格式,并使用php内置函数读取JSON。
解码JSON文件:php.net/manual/en/function.json-decode.php
对于编码JSON文件:php.net/manual/en/function.json-encode.php
答案 1 :(得分:0)
如果我们在文本文件中使用json内容或简单的字符串内容将会很好。
这可能适合您当前的要求。
$arrayText = "";
foreach(file('array.txt') as $line) {
$arrayText .= $line;
}
echo $arrayText."<br/>";//Array ( [0] => something [1] => another [2] => other )
$arrayText = trim($arrayText);
$arrayText = preg_replace(array('/^Array\s*\(/', '/\)\s*$/', '/\[([0-9]+)\]/'), array('', '', ''), $arrayText);
echo $arrayText."<br/>";//=> something => another => other
$arrData = explode('=>', $arrayText);
echo "<pre>";
print_r($arrData);
echo "</pre>";
echo $arrData[1];//something