Foreach returns only one row

后端 未结 2 757
庸人自扰
庸人自扰 2021-01-29 14:33

I have foreach loop, but it only returns a single option in select menu. Vardump shows multiple results. What am I missing?

$vars = explode(\';\', $this->sett         


        
2条回答
  •  无人共我
    2021-01-29 15:02

    try this

    $vars = explode(';', $this->settings['address']);
    
    $options = [];
    foreach ($vars as $row) {
        $options[] = array(
            'id' => 'option_1',
            'icon' => $this->settings['icon'],
            'name' => 'Option 1',
            'description' =>'',
            'fields' => '' ,
            'cost' => $this->settings['fee'],
            'tax_class_id' => $this->settings['tax_class_id'],
            'exclude_cheapest' => false,
        );
    }
    
    return array(
        'title' => $this->name,
        'options' => $options
    );
    

    Or maybe this

    $options = '';
    
    foreach ($vars as $row) {
        $options .= '' . PHP_EOL;
    }
    
    $fileds = '';
    
    return array(
        'title' => $this->name,
        'options' => array(
            array(
                'id' => 'option_1',
                'icon' => $this->settings['icon'],
                'name' => 'Option 1',
                'description' =>'',
                'fields' => $fileds,
                'cost' => $this->settings['fee'],
                'tax_class_id' => $this->settings['tax_class_id'],
                'exclude_cheapest' => false,
            ),
        ),
    });
    

提交回复
热议问题