Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用foreach循环检查字符串中的值_Php - Fatal编程技术网

Php 如何使用foreach循环检查字符串中的值

Php 如何使用foreach循环检查字符串中的值,php,Php,这可能是一个简单的解决方案,但我无法想出它,因此欢迎任何帮助 我有一个购物篮,所以顾客可以为它添加不同的物品(正常情况下) 在这些项目中,有些是有条件的,当添加到篮子中时,我想显示它们,但是我设置了它,以便它检查值,但它只从最后添加的项目中获取值 有以下几点 public function get_contents() { $items = array(); foreach($this->items as $tmpItem) { $item = n

这可能是一个简单的解决方案,但我无法想出它,因此欢迎任何帮助

我有一个购物篮,所以顾客可以为它添加不同的物品(正常情况下) 在这些项目中,有些是有条件的,当添加到篮子中时,我想显示它们,但是我设置了它,以便它检查值,但它只从最后添加的项目中获取值

有以下几点

public function get_contents() {
$items = array();

        foreach($this->items as $tmpItem) {
            $item = null;
            $item['Condition']  = $this->Conditions[$tmpItem];
            $items[]          = $item;
        }
        return $items;
    }


    foreach($this->items as $item) {
        if(strstr($this->Conditions[$item], 'no') ==!false) {
            $this->Conditions = 'no';
            $item['Condition']      = $this->Conditions;
        } else  
            $this->Conditions = 'yes';
            $item['Condition']      = $this->Conditions;
我想做的是,如果其中任何一项包含条件“否”

  $this->Conditions = 'no';
  $item['Condition']      = $this->Conditions;
但是,它只接受最后添加的项目的值
欢迎提供任何帮助

您正在使用数组元素

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

另外,如果您需要没有标签的物品,您可以尝试
$item[$this->Conditions[$item]]='no'
您的$this->items是否包含购物车中的所有物品?@Sunil谢谢您的查看,是的,我想是这样的。在foreach之后,$this->items打印了什么?它是在每个项目中包含“条件”还是仅在最后一个项目中包含“条件”?仅在最后一个项目?我认为项目数组的定义中存在问题,您是否在简单数组而不是对象中检查了循环中的$item?