如何从每个循环中获取值

时间:2017-01-12 14:08:46

标签: php

我有以下功能:

public function get_contents() {

    $items = array();

    foreach($this->items as $tmpItem) {
        $item = null;
        $item['id']       = $tmpItem;
        $item['name']     = $this->names[$tmpItem];
        $item['price']    = $this->prices[$tmpItem];
        $item['qty']      = $this->qtys[$tmpItem];
        $item['X']  = $this->X$tmpItem];
        $items[]          = $item;
    }
    return $items;
}

我想得到X的值。 因此,如果有3个循环,例如no,no,则对于X的值,我将如何使用这些值。

我试过以下

public function update_X($X){
    foreach($this->items as $item) {
        if(strstr($this->Xs[$item], 'no') ==!false){
            $this->Xs = 'no';
            $item['X']      = $this->Xs;
        }
        else    
            $this->Xs = 'yes';
        $item['X']      = $this->Xs;
    }
}

它只会使用添加的X的最后一个值。所以在这种情况下它会是'是'。我想要的是,如果X的任何值没有$ item ['X']的值,则为'no。

欢迎任何帮助

1 个答案:

答案 0 :(得分:0)

您总是重置X,而不是连接。这就是为什么你总是得到最后一个值。

试试这个:

$Xs="";
foreach($this->items as $item) {
    $Xs.=$this->X[$item];
}
// $Xs is now "nonoyes"