PHP如何将多个if语句组合成一个函数

时间:2016-02-08 19:33:14

标签: php if-statement

根据复选框值,此表单会将订阅者添加到相应的列表中,但不能保存多个值。

如何按顺序合并选择并保存多个复选框值?

if(isset($_POST['checkbox_list']) && in_array('Austin Metro', $_POST['checkbox_list'])){
    $listID = '3';
    if ($listID){
        $indeed_mail->indeed_wysija_subscribe( $listID, $email );
    }
    break;
} else if(isset($_POST['checkbox_list']) && in_array('Central Austin', $_POST['checkbox_list'])){
    $listID = '4';
    if ($listID){
        $indeed_mail->indeed_wysija_subscribe( $listID, $email );
    }
    break;
} else if(isset($_POST['checkbox_list']) && in_array('Georgetown', $_POST['checkbox_list'])){
    $listID = '5';
    if ($listID){
        $indeed_mail->indeed_wysija_subscribe( $listID, $email );
    }
    break;
}

1 个答案:

答案 0 :(得分:1)

这可能是您正在寻找的......?

<input type="checkbox" name="checkbox_list[]" value="Austin Metro">
<input type="checkbox" name="checkbox_list[]" value="Central Austin">
<input type="checkbox" name="checkbox_list[]" value="Georgetown">

编辑:我刚看了你上面的评论......

要将复选框作为数组使用:

foreach($_POST['checkbox_list'] as $check) 
{
    // do your stuff as explained above...
    if (isset(check) && array_search($check, $myValues) !== false)
    {
        $index = array_search($check, $myValues);
        $indeed_mail->indeed_wysija_subscribe( $myIds[$index], $email );
    }
}

然后

<?php
/** Enable W3 Total Cache */
define('WP_CACHE', true); //Added by WP-Cache Manager