从选择查询中将Casted Value提取到数组中

时间:2017-06-21 03:31:34

标签: php arrays sql-server database casting

我使用强制转换来转换我的选择查询中其中一列的数据类型。

SELECT cast(user_id as varchar(255)) from cabinet

我需要将此值的结果提取到数组中,但它返回空值

$listData[] = array(
    "member_id" => $row['cast(user_id]
  );

如何在阵列上显示它?

1 个答案:

答案 0 :(得分:1)

SQL:

SELECT cast(user_id AS varchar(255)) AS member_id FROM cabinet

PHP:

$listData = array("member_id" => $row['member_id']);

基本上,你忘了在你的SQL中命名cast函数的返回值,并在PHP中使用了一些非常奇怪的语法。 $Array[] = $x;将元素$x作为数组项添加到PHP中的$Array。要创建新阵列,您应该运行$Array = array();。有些编程语言确实会强制你在值赋值的变量名后加上方括号,将其指定为数组/字符串类型,但PHP不是其中之一。

要按键引用项目,必须使用数组的名称和方括号中的键值($Array[$n],其中$n是带整数索引的数组的整数,{{1对于带有String索引的数组)。 Array['key']不是有效的数组键,您必须为SQL函数返回一个名称,以便能够将其作为数组项引用。

如果有意义,请告诉我。

我的回答是假设您熟悉mySQLi并知道如何从查询中获取'cast(user_id AS varchar(255))'