【发布时间】:2016-08-12 11:58:00
【问题描述】:
根据我的阅读,在我的 6 行 11 列的表上执行以下 sql 命令和 fetchAll() 时:
$sql = "SELECT 1 FROM table";
$sqlPrepared = $conn->prepare($sql)
$sqlPrepared->execute()
$result = $sqlPrepared->fetchAll();
$print_r($result);
我应该得到 6 行,每行只有一个值,每个值中的值都是 1。但是,我在每行中得到 6 行两个值,每个值中的值为 1:
Array (
[0] => Array (
[1] => 1
[2] => 1 )
[1] => Array (
[1] => 1
[2] => 1 )
[2] => Array (
[1] => 1
[2] => 1 )
[3] => Array (
[1] => 1
[2] => 1 )
[4] => Array (
[1] => 1
[2] => 1 )
[5] => Array (
[1] => 1
[2] => 1 )
)
问题 1: 为什么我会为每个数组获得 2 个值而不是 1 个?
问题 2: 而不是内部数组
Array (
[1] => 1 ...
为什么不从[0]开始?:
Array (
[0] => 1 ...
【问题讨论】:
-
1 应该是列名还是您的意思是
*? -
@aldrin27 1 不是列名。 “SELECT 1 FROM”,这是一种常用的 sql 技术,它的输出几乎是我所期望的,找到的每一行的值“1”,但是我得到 2 列“1”一个奇怪的原因。
-
我认为 1 检查它是否存在。 stackoverflow.com/questions/7171041/…