我正在学习如何制作购物车。 (从SO上的不同帖子/问题来看,我知道很多人会建议我只使用预制系统;但是,作为一个新手,我真的想知道它是如何工作的。而且,我的购物车可能会有更多的元素比平时更好。
我正在使用for循环来显示购物车会话数组中用户选择的商品。表面上看,只有那些选择出现在浏览器上;但是,每次刷新页面时,var_dump都会显示带有NULL值的BLANK ARRAYS。同样,没有任何内容添加到回显的购物车视图中。
这可能听起来很愚蠢,但我只是想确保那些NULL ARRAYS不会导致任何问题,因为检查输出购物车并将内容转储到数据库中的订单表。
具有产品ID但没有QUANTITY的阵列是什么?如果智能***用户试图添加到数量为零的购物车,请提前考虑。
非常感谢您的知识渊博的观点和经验:) - KATY
答案 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
}
}