无法使array_push工作

时间:2014-02-26 10:50:08

标签: php arrays soap case

我想为数组添加值,因此输出将是这样的(1,2,3,4,5)。 为了实现这一点,我尝试使用array_push。我已经尝试了很多工作,但它只输出最后一个数字,在这种情况下是'5'。你们看到我的代码出了什么问题吗?提前谢谢!

$websites = array();

                    case 'Hengelsport':
                        if ($waarde == 'true') {
                            array_push($websites,1);}
                        break;

                    case 'Diervoeders':
                        if ($waarde == 'true') {
                            array_push($websites,2);}
                        break;

                    case 'Vijverconcurrent':
                        if ($waarde == 'true') {
                            array_push($websites,3);}
                        break;

                    case 'Broqx':
                        if ($waarde == 'true') {
                            array_push($websites,4);}
                        break;

                    case 'Dekrabpaal':
                        if ($waarde == 'true') {
                            array_push($websites,5);}
                        break;


                $this->articleData['website_ids'] = $websites; 

2 个答案:

答案 0 :(得分:0)

如果您设置$websites变量,则不能拥有最后一个数字的其他值,如下所示:$websites = array();

不要忘记切换操作符。

switch ($i) {
    case "Hengelsport":
        echo "i égal 0";
        if ($waarde == 'true') {
            array_push($websites,1);
        }
        break;
    //...
}

您是否向我们展示了完整的代码?

答案 1 :(得分:0)

或者以一种简单的方式:

$website_ids = array(
    'Hengelsport' => 1,
    'Diervoeders' => 2,
    'Vijverconcurrent' => 3,
    'Broqx' => 4,
    'Dekrabpaal' => 5
);

if ($waarde == 'true') 
{
    array_push($websites, $website_ids[$your_var_containing_name]);
}