php fgets 爆炸显示 "Array." 而不是 $array
php fgets explode shows "Array." instead of $array
我正在尝试将纯文本日志文件(无自动换行)转换为更具可读性的内容。
php-文件
<?php
$log = fopen("/home/raspi/scripts/logs/test.log", "r");
while (!feof($log)){
$arrM = explode("|",fgets($log));
echo "$arrM . <br>";
}
fclose($log)
?>
只要日志文件中有 |
,php 脚本就会在输出中将其更改为 <br>
。
但是,当打开 php 文件时,我得到的只是
Array .
Array .
日志文件的内容
Sachen|Enter|nochmal Enter|Und schon wieder Enter
。我是初学者,开始阅读有关 fopen 和 explode 的内容。以为这正是我所需要的,但出了点问题......?提前致谢:)
使用echo "<pre>";print_r($arrM);
原因,如果在 echo 中打印了一个数组,PHP 将显示数组,因此您最好看看 print_r 中发生了什么,因此您可以访问变量,或将其放入循环。
问题是你不能用echo
输出一个数组,你需要循环
foreach ($arrM as $row) echo $row;
或使用 var_dump($arrM)
替代 'developer-output' 或 print_r($arrM)
。
使用 print_r() 打印数组(开发人员输出)
<?php
$log = fopen("/home/raspi/scripts/logs/test.log", "r");
while (!feof($log)){
$arrM = explode("|",fgets($log));
//echo "$arrM . <br>";
print_r($arrM);
}
fclose($log)
?>
echo 打印一个或多个字符串
<?php
$log = fopen("/home/raspi/scripts/logs/test.log", "r");
while (!feof($log)){
$arrM = explode("|",fgets($log));
//echo "$arrM . <br>";
foreach($arrM as $string){
echo $string . '<br>';
}
}
fclose($log)
?>
我正在尝试将纯文本日志文件(无自动换行)转换为更具可读性的内容。 php-文件
<?php
$log = fopen("/home/raspi/scripts/logs/test.log", "r");
while (!feof($log)){
$arrM = explode("|",fgets($log));
echo "$arrM . <br>";
}
fclose($log)
?>
只要日志文件中有 |
,php 脚本就会在输出中将其更改为 <br>
。
但是,当打开 php 文件时,我得到的只是
Array .
Array .
日志文件的内容
Sachen|Enter|nochmal Enter|Und schon wieder Enter
。我是初学者,开始阅读有关 fopen 和 explode 的内容。以为这正是我所需要的,但出了点问题......?提前致谢:)
使用echo "<pre>";print_r($arrM);
原因,如果在 echo 中打印了一个数组,PHP 将显示数组,因此您最好看看 print_r 中发生了什么,因此您可以访问变量,或将其放入循环。
问题是你不能用echo
输出一个数组,你需要循环
foreach ($arrM as $row) echo $row;
或使用 var_dump($arrM)
替代 'developer-output' 或 print_r($arrM)
。
使用 print_r() 打印数组(开发人员输出)
<?php
$log = fopen("/home/raspi/scripts/logs/test.log", "r");
while (!feof($log)){
$arrM = explode("|",fgets($log));
//echo "$arrM . <br>";
print_r($arrM);
}
fclose($log)
?>
echo 打印一个或多个字符串
<?php
$log = fopen("/home/raspi/scripts/logs/test.log", "r");
while (!feof($log)){
$arrM = explode("|",fgets($log));
//echo "$arrM . <br>";
foreach($arrM as $string){
echo $string . '<br>';
}
}
fclose($log)
?>