0

我正在尝试将我的新闻提要结果转换为一个数组,以便我现在可以对结果进行分组并拥有诸如“Peter 和其他 6 人发表评论……”之类的条目

我想问其他人,他们通过 in_array(); 评论了同一个线程;将是一个很好的解决方案。但是现在我很难将整个 mysql 结果转换为一个数组,而不必更改原始 while 循环的整个结构,其中所有数据库值都是使用 $getnews_row 请求的。我认为我创建数组的方式可能存在错误。

我花了一个小时在谷歌上搜索,但我找不到任何将变量(数组)实际添加到多维数组的示例。

有任何想法吗?

我的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++;
}

我的输出:

解析错误:语法错误,第 48 行的 /newsfeed/index.php 中出现意外的 '[',期待 ')'(此摘录中的第 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:数组


也尝试替换$x = $x_total;$x_total = $x;

并在第二个循环中添加$到变量。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 回答