我的应用程序的javascript设置为显示mysql数据的某些列,但是如果特定列(col3)中没有数据,则js不会显示col3的数据,只会显示mysql SELECT语句的其余部分,即如果col3= "",不显示col3。
在某些情况下,我希望js无论里面是否有数据都不要显示它,但我更喜欢在php中编写逻辑。
目前,如果我将 col3 保留在 select 语句之外,js 会将其显示为“未定义”。
我想知道 mysql SELECT 语句中是否有一种方法可以使 col3 等于空字符串,无论其中是否有数据?
或者我必须将每个 col3 结果设置为“”...
while ( $row=$result->fetch_assoc() ) { $row['col3']=""; $resultArray[]=$row; }
谢谢你。
ISNULL
或相关功能。
array_merge
:
将一个或多个数组的元素合并在一起,以便将其中一个的值附加到前一个数组的末尾。它返回结果数组。
例如:
$defaults = array( 'col3' => '' );
$row = array_merge( $defaults, $row );
如果您知道您的值将是
NULL
(并且并非不存在),则使用以下函数(未经测试):
function array_merge_isset() {
$args = func_get_args();
$result = array();
foreach( $args as $arr ) {
if( !is_array( $arr ) ) {
continue;
}
foreach( $arr as $k=>$v ) {
if( isset( $v ) ) {
$result[ $k ] = $v;
}
}
}
return $result;
}