我使用强制转换来转换我的选择查询中其中一列的数据类型。
SELECT cast(user_id as varchar(255)) from cabinet
我需要将此值的结果提取到数组中,但它返回空值
$listData[] = array(
"member_id" => $row['cast(user_id]
);
如何在阵列上显示它?
答案 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))'
。