空阵列,安全吗?

时间:2013-05-07 17:27:34

标签: php

我正在学习如何制作购物车。 (从SO上的不同帖子/问题来看,我知道很多人会建议我只使用预制系统;但是,作为一个新手,我真的想知道它是如何工作的。而且,我的购物车可能会有更多的元素比平时更好。

我正在使用for循环来显示购物车会话数组中用户选择的商品。表面上看,只有那些选择出现在浏览器上;但是,每次刷新页面时,var_dump都会显示带有NULL值的BLANK ARRAYS。同样,没有任何内容添加到回显的购物车视图中。

这可能听起来很愚蠢,但我只是想确保那些NULL ARRAYS不会导致任何问题,因为检查输出购物车并将内容转储到数据库中的订单表。

具有产品ID但没有QUANTITY的阵列是什么?如果智能***用户试图添加到数量为零的购物车,请提前考虑。

非常感谢您的知识渊博的观点和经验:) - KATY

1 个答案:

答案 0 :(得分:3)

在使用之前检查阵列是否为空? 在执行任何数据库操作或类似操作之前,您还应该检查每个元素是否具有有效值。

if( !empty( $array ) && count( $array ) > 0 )
{
    foreach( $array as $value )
    {
        if( empty( trim( $value ) ) ) // checks if 0, NULL or ''
        {
            continue;
        }

        // if you store product ID's in the array you can cast to intval
        $value = intval( $value );

        // do stuff
    }
}