Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.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
用于构建动态填充模型的mySQL查询_Mysql_Sql_Database_Pdo_Model - Fatal编程技术网

用于构建动态填充模型的mySQL查询

用于构建动态填充模型的mySQL查询,mysql,sql,database,pdo,model,Mysql,Sql,Database,Pdo,Model,下面我有一些代码,它演示了我希望动态完成的硬编码示例 在较高的层次上,我希望做一些类似于select*from view\u data\u$app\u state的事情,然后将该视图表中的所有数据动态地放入我的胡须模板中 我当前必须使用以下代码将特定列的多行数据与视图数据分组: <?php error_reporting(E_ALL); class Example { function __construct(){ try {

下面我有一些代码,它演示了我希望动态完成的硬编码示例

在较高的层次上,我希望做一些类似于
select*from view\u data\u$app\u state
的事情,然后将该视图表中的所有数据动态地放入我的胡须模板中

我当前必须使用以下代码将特定列的多行数据与视图数据分组:

 <?php

    error_reporting(E_ALL);

    class Example {
        function __construct(){
            try {
                $this->db = new PDO('mysql:host=localhost;dbname=Example', 'root','drowssap');
            } 
            catch (PDOException $e) {
                print($e->getMessage());
                die();
            }
        }
        function __destruct(){
            $this->db = null;
        }
        function string_to_array($links_string){
            return explode(",", $links_string);

        }
        function get_view_data(){
            $q = $this->db->prepare('select *, GROUP_CONCAT(`links`) as "links" from `view_data_global` ');
            $q->execute();
            $result = $q->fetchAll(PDO::FETCH_ASSOC);
            return $result;
        }
    }

    $Example = new Example();

    $result = $Example->get_view_data();

    $result[0]["links"] = $Example->string_to_array($result[0]["links"]);

    echo json_encode($result);
如何在每个视图表上动态复制此过程


非常感谢你

您可以使用
PDOStatement::fetch
检索结果,
fetch_style
设置为
PDO::fetch_ASSOC
(其他一些值也将提供相同的信息)。在这种情况下,结果集将按列名进行数组索引。您可以使用
foreach(数组\表达式为$key=>$value)访问此信息

有关更多信息,请参阅。

这给了我
{“id”:“1”,“title”:“这是标题测试”,“links”:“main”}不是我想要的,因为它不包含链接列的其余值。任何想法。谢谢你,顺便说一句
[{"id":"1","title":"This is the title test","links":["main","about","store"]}];