0
<?php
$myFile = "file.txt";
$fh = fopen($myFile, 'r');
$theData = fread($fh, filesize($myFile));
print_r ($theData);
fclose($fh)
?>

これは私のファイルを正常に読み取り、データを画面に出力した現在のコードです。ただし、データを展開しようとすると、サーバー エラーが発生し、ページがまったく読み込まれません。唯一のエラー メッセージが表示され、page may be down for maintenance or configured incorrectlyなぜ機能しないのかわかりません。

私は入れようとしています

$my_array = explode("/n", $theData);

データが読み取られた後、印刷される前に、ページを追加するたびにページが表示されなくなりますが、データを取り出すとページが再び正常に読み込まれます。foreach ループに入れてデータを展開し、一度に 1 行ずつ出力できるようにする必要があります (これは電子メール ディレクトリです) が、なぜ機能しないのかわかりません。

$myFile = "file.txt";
$fh = fopen($myFile, 'r');
$theData = fread($fh, filesize($myFile));
$assoc_array = array()
$my_array = explode("\n", $theData);
foreach($my_array as $line)
{
    $tmp = explode(" ", $line);
    $assoc_array[$tmp[0]] = $tmp[1];
}
fclose($fh)
$mail = $assoc_array;

.txt ファイルから配列への読み取り方法について最初の調査を行っているときに見つけたこのコードを試しましたが、それでもサーバー エラーの問題が発生します。

誰かが私が間違っている場所を説明できますか?


最後に、私が使用したコードは次のとおりです。

<?php

// Open the file
$filename = 'pvemail.txt';
$fp = fopen($filename, 'r'); 

// Add each line to an array
if ($fp) {
   $array = explode("\n", fread($fp, filesize($filename)));
}
print_r ($array);
?>

データを読み取り、各行を配列に出力することができました。あとは、見栄えを良くするだけです。助けてくれてどうもありがとう!

4

1 に答える 1

0

初期の問題

参照コードを手で入力し、実際のコードが正しい場合を除き、セミコロンがいくつか欠けているようです。

$assoc_array = array()

fclose($fh)


オフセット 1 が存在しません

$tmp[1]は存在しません。これは$tmp、値がないか、値が 1 つしかないものがあることを意味します。ほとんどの場合、行の 1 つがスペースのない単一の単語であるか、完全に空の場合です。

于 2013-09-13T08:47:44.777 に答える