PHP PDO fetch返回一个数组?

$GetUid = $dbConnect->prepare("SELECT UID FROM users WHERE username = :username");
$GetUid->execute($RegisterData3);
$UserID = $GetUid->fetch();

为什么它返回数组而不是字符串?

var_dump(‘$UserID’)说

array
  'UID' => string '45' (length=2)
  0 => string '45' (length=2)

它应该是

array
  'UID' => string '45' (length=2)

更新*
0怎么样?它来自哪里?谢谢你的回复.
最佳答案
您没有指定fetch_style参数.它默认返回FETCH_BOTH,这是一个数组.以下是选项以及如何指定它:
http://php.net/manual/en/pdostatement.fetch.php

编辑:此外,它将始终返回一个数组,即使只有一列,因为一行可以包含多个属性.您可以使用FETCH_ASSOC然后指定列名来获取数据,或者,如果您像使用fetch()一样,则数组将由列名和0索引列号索引.

dawei

【声明】:丽水站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章