0

これが私が達成しようとしているものです、

PHP を使用してテキスト ファイルを読み取り、その各行を配列値に割り当てて出力します。

<?php
$file = fopen("news.txt", "r");
$news = array();
$count = 0;
while (!feof($file)) {
    $count = $count + 1 ;
   $news[] = fgets($file);
}

fclose($file);
for ($x=1; $x<$count; $x++){
            echo $news[$x];
}
?>

$countコードは正常に動作していますが、php()を使用して読み取った行数のサイズとまったく同じ配列を JavaScript で作成したいと考えています。これがそのためのコードです。

var content=new Array()
    for (var i=0;i<<?php echo $count ?>;i++)

この JavaScript ループは、テキスト ファイルの行数と同じ回数だけ繰り返されます。テキストの各行が変数に格納されていることはコードから明らかなので$news

変数のテキストの各行を$newsjavascript 内の配列に割り当てるにはどうすればよいですか?

それはこのようなものでなければなりません、

 var content=new Array()
    for (var i=0;i<<?php echo $count ?>;i++){
           content[i] = ***$news[i]***

PHP 変数から配列 content[] の各変数にテキストの各行を割り当てる方法は?

4

3 に答える 3

2

これは間違ったアプローチです。配列を JSON 文字列としてエンコードし、次のように渡します。

var jsonString = <?php echo json_encode($news); ?>;

その後、任意の方法で JSON オブジェクトを操作できます。

たとえば、すべての内容を印刷するには:

var json = <?php echo json_encode($news); ?>;
for(var i=0; i < json.length; i++){
    console.log(json[i]);
}
于 2013-09-25T14:37:40.330 に答える
2

ファイルを配列に変換するために使用するコードを簡略化できます。

$news = file($file);

これをJSに転送するには、jsonを使用できます。

var content = <?php echo json_encode($news);?>;

fileファイルが存在しない場合やアクセスできない場合に備えて、への呼び出しの結果を必ず確認してください。

于 2013-09-25T14:38:10.623 に答える