Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 数据库结果的数组结构_Php_Sql - Fatal编程技术网

Php 数据库结果的数组结构

Php 数据库结果的数组结构,php,sql,Php,Sql,这可能是一个非常简单的问题,但以下哪种方法是构造返回db结果的数组的最佳实践?说一个博客帖子列表。。。对帖子进行分类和分组?还是对元素进行排序和分组 Array ( [title] => Array ( [0] => Untitled [1] => Untitled ) [id] => Array ( [0] => 8

这可能是一个非常简单的问题,但以下哪种方法是构造返回db结果的数组的最佳实践?说一个博客帖子列表。。。对帖子进行分类和分组?还是对元素进行排序和分组

Array
(
    [title] => Array
        (
            [0] => Untitled
            [1] => Untitled
        )

    [id] => Array
        (
            [0] => 8
            [1] => 11
        )

)
或 第一种方法似乎是最简单的,也是我一直在用的方法。我可以简单地:

while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
    $post['title'][] = $row['title'];
    $post['id'][] = $row['id'];
}
然后

$count = count($post['id']);
但第二种方法似乎更有意义,而且信息结构更具逻辑性。在模板中进行设置、筛选和使用会稍微复杂一些

$c = 0;
while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
    $post[$c]['title'] = $row['title'];
    $post[$c]['id'] = $row['id'];
    $c++;
}

第二种方法设置得更好、更简单:

while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
    $posts[] = $row;
}

// total number of posts
$nrPosts = count($post);
这将以数字形式自动索引数组,您不需要将$row中的任何内容复制到$post中,它只需复制整行

第二种结构更好:

  • 它将post的数据逻辑地分组到一个结构中
  • 它不需要处理数据,只需要初始填充$post数组
  • 您可以使用单个索引/索引范围轻松处理任意数量的博客文章

第二种设置更好、更简单:

while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
    $posts[] = $row;
}

// total number of posts
$nrPosts = count($post);
这将以数字形式自动索引数组,您不需要将$row中的任何内容复制到$post中,它只需复制整行

第二种结构更好:

  • 它将post的数据逻辑地分组到一个结构中
  • 它不需要处理数据,只需要初始填充$post数组
  • 您可以使用单个索引/索引范围轻松处理任意数量的博客文章

    • 在输出数据结构时,使其看起来不正确是没有用的。第二个数据集的可用性也更高,这就是为什么它被用于像Wordpress这样的大型项目中。

      如果输出的数据结构看起来不正确,那就没有用了。第二个数据集的可用性也更高,这就是为什么它被用于像Wordpress这样的大型项目。

      感谢您的澄清。我希望大多数的书都能涵盖这些小东西。谢谢你把这些整理好。我希望大多数书都能涵盖这些小东西。