我正在尝试从db表创建一个单行数组,其中包含几行: p>
<前> 我希望创建的数组尽可能简单,如value1,value2 ,value3 p>
我正在使用此函数 p>
是否有一个简单的 这样做的方法,也许用另一个PDO模式,例如用PDO :: FETCH_UNIQUE完成,或者应该采用不同的方法? p>
UPDATE strong> - 这个 它的工作方式(感谢@u_mulder em>) p>
--------------
id | name
--------------
1 | 值1
2 | 值2
3 | 值3
--------------
code> pre>
function getAll()
{
//选择所有数据
$ sql =“SELECT name FROM”。 $ this-&gt; table_name。 “ORDER BY id”;
$ prep_state = $ this-&gt; db_conn-&gt; prepare($ sql);
$ prep_state-&gt; execute();
$ row = $ prep_state-&gt ; fetch(PDO :: FETCH_ASSOC);
$ this-&gt; name = $ row ['name'];
}
code> pre>
function getAll()
{
$ sql =“SELECT name FROM”。 $ this-&gt; table_name。 “ORDER BY id”;
$ prep_state = $ this-&gt; db_conn-&gt; prepare($ sql);
$ prep_state-&gt; execute();
$ names = $ prep_state-&gt; fetchAll (PDO :: FETCH_COLUMN,0);
return(implode(“,”,$ names));
}
code> pre>
div>
I am trying to create a single array from a db table that has few rows like:
--------------
id | name
--------------
1 | value 1
2 | value 2
3 | value 3
--------------
I want the created array to be as simple as possible like value1,value2,value3
I am using this function
function getAll()
{
//select all data
$sql = "SELECT name FROM " . $this->table_name . " ORDER BY id";
$prep_state = $this->db_conn->prepare($sql);
$prep_state->execute();
$row = $prep_state->fetch(PDO::FETCH_ASSOC);
$this->name = $row['name'];
}
Is there a simple way to do it, perhaps with another PDO Mode like for example is done with PDO::FETCH_UNIQUE, or a should take a different approach?
UPDATE - This way it worked (thanks to @u_mulder)
function getAll()
{
$sql = "SELECT name FROM " . $this->table_name . " ORDER BY id";
$prep_state = $this->db_conn->prepare($sql);
$prep_state->execute();
$names = $prep_state->fetchAll(PDO::FETCH_COLUMN, 0);
return(implode(",",$names));
}