0

ニュースフィードの結果を配列に変換しようとしています。これにより、結果をグループ化し、「ピーターと他の 6 人がコメントしました…」のようなエントリを作成できるようになりました。

in_array(); を介して同じスレッドにコメントした他の人に尋ねることを考えました。良い解決策になります。しかし今、すべてのデータベース値が $getnews_row で要求される元の while ループの構造全体を変更せずに、mysql の結果全体を配列に変換するのに苦労しています。配列の作成方法に誤りがある可能性があると思います。

過去 1 時間かけてグーグルで手を離しましたが、変数 (配列) が実際に多次元配列に追加される例は見つかりません。

何か案は?

私のPHP:

$x = 0;
while($getnews_row = mysql_fetch_array($res_getnews))
{
$this_getnewsrow = array
  (
  [$x] => array
  ($getnews_row)
  )
  $x++;
}

$x = $x_total;
$x=0;
while($x < $x_total)
{

    $getnews_row =  $this_getnewsrow[$x];

    echo $getnews_row['id'];

    x++;
}

私の出力:

解析エラー: /newsfeed/index.php の 48 行目 (この抜粋の 6 行目) で構文エラー、予期しない '['、')' が必要です

4

2 に答える 2

2

この方法で配列を初期化することはできません。

これを交換してみてください

$x = 0;
while($getnews_row = mysql_fetch_array($res_getnews))
{
$this_getnewsrow = array
  (
  [$x] => array
  ($getnews_row)
  )
  $x++;
}

これとともに

while($getnews_row = mysql_fetch_array($res_getnews))
{
$this_getnewsrow[] = $getnews_row;
}

PHP: Arraysを見てください。


また、置き換え$x = $x_total;てみてください$x_total = $x;

そして、2 番目のループで変数に追加$します。x

于 2012-05-12T12:46:06.543 に答える
0

これを試して:

$i = 0;
while($getnews_row = mysql_fetch_array ($res_getnews)) {
    $this_getnewsrow [$i] = $getnews_row;
    $i++;
}

$j = 0;
while($j < $i_total)
{

    $getnews_row =  $this_getnewsrow[$j];

    echo $getnews_row ['id'];

    $j++;
}

アップデート

<?php
while ($row = mysql_fetch_array($res_getnews, MYSQL_ASSOC)) {
    echo $row ['id'];
}
于 2012-05-12T12:45:44.097 に答える