0

基本上我从复选框中获取值(即在表单中选中了多少个复选框)。我需要做的是回显某个数值的价格。这是我的想法,但不确定它是否正确:

 $clubTotal = array(
                $driversChecked,
                $hybridsChecked,
                $woodsChecked,
                $boxesChecked,
                $wedgesChecked,
             ); 

 $numberOfclubs = array_sum($total) 

    if ($numberOfclubs > 6)
        echo "price";
    if ($numberOfclubs == 6)
        echo "price";
    if($numberOfclubs > 6 && $numberOfclubs < 9)
        echo "price";

我相信这会按照我需要的方式工作,只是不确定是否有速记或更好的方法来编写它。谢谢。

4

3 回答 3

2

您需要使用countPHP 的函数来计算数组中的项目数。

所以你的代码应该是这样的:

$numberOfItems = count($clubTotal);
if ($numberOfItems > 6)
        echo "price";
if ($numberOfItems == 6)
         echo "price";
if($numberOfItems > 6 && $numberOfItems < 9)
        echo "price";
于 2013-09-27T18:06:54.210 回答
1
$count = array_sum($clubTotal) ;
if ($count== 6 )
    echo "price when 6" ;
else if ($count> 6)
{
    if ($count< 9)
        echo "price when 7-8" ;
    else
        echo "price when >= 9" ;
}

替代方案是:

$count = array_sum($clubTotal) ;
if ( $count >= 6 )
{
    switch( $count )
    {
        case 6:
            echo "price when 6" ;
            break ;

        case 7:
        case 8:
            echo "price when 7-8" ;
            break ;

        default:
            echo "price when >= 9";
            break ;
    }
}

我希望它会有所帮助。

于 2013-09-27T18:09:28.853 回答
0

好吧,您不能将数组与这样的整数进行比较,而且数组也不会那样工作。

$clubTotal = array(
    $driversChecked,
    $hybridsChecked,
    $woodsChecked,
    $boxesChecked,
    $wedgesChecked
);

$count = count($clubTotal);

if( $count > 6 ) {
    echo "price";
}
elseif( $count == 6 ) {
    echo "price";
}
elseif( $count > 6 && $count < 9 ) {
    echo "price";
}

您需要使用count()和链接 IF 语句来计算数组项,通常会得到 if...elseif... 处理。

于 2013-09-27T18:09:52.257 回答