Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/259.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 以雄辩的口吻_Php_Laravel_Orm_Eloquent - Fatal编程技术网

Php 以雄辩的口吻

Php 以雄辩的口吻,php,laravel,orm,eloquent,Php,Laravel,Orm,Eloquent,我有两个数组 temp[] time[] 例如,如果我的数组中有这样的数据 temp time [0] 80 45 [1] 70 50 [2] 85 65 [3] 90 30 $mix=MyTable::whereIN('temperature', $temp) ->whereIN('time', $time)->where('category',$cat) ->get(); 我

我有两个数组

temp[]
time[]
例如,如果我的数组中有这样的数据

    temp   time 
[0]  80     45
[1]  70     50
[2]  85     65
[3]  90     30 
 $mix=MyTable::whereIN('temperature', $temp)
         ->whereIN('time', $time)->where('category',$cat)
         ->get();
我想根据这两个数组参数查询数据 如从MyTable中选择*,其中温度为80,时间为45,下一次从MyTable中选择*,其中温度为70,时间为50,依此类推

我正在做这样的事情

    temp   time 
[0]  80     45
[1]  70     50
[2]  85     65
[3]  90     30 
 $mix=MyTable::whereIN('temperature', $temp)
         ->whereIN('time', $time)->where('category',$cat)
         ->get();
但它给我的输出是这两个参数的组合。不完全是从数组0到以后的

我希望我正确地解释了我的问题

我试过这个

    $result=Ergebnisse::where('name_id', $nam)->where('geometrie_id', $geo)->get();
    foreach ($result as $key => $res) {

$mix=Ergebnisse::where('temperatur', $res->temperatur)
         ->where('zeit', $res->zeit)->groupBy('katogorie_id')
         ->get();

}
当我添加$mix时,它只显示一个结果。但根据我的数据库,它应该显示多个在这里不起作用的

。这样做:

$data = MyTable::where('category', $cat)
    ->where(function($q) use($array) {               
        foreach ($array as $item) {
             $q->orWhere(function($q) use($item) {
                 $q->where('temperature', $item['temp'])
                   ->where('time', $item['time']);
            }
        }
    })->get();

你能试试foreach循环吗?使用foreach循环遍历这两个数组,然后使用以下值进行查询:$mix=MyTable::where'temperature',$temp->where'time',$time->where'category',$cat->first;它不能只显示一个结果吗?您是否可以更新问题,使其包含您尝试的新代码?$mix[]=Ergebnisse::where'temperature'、$res->temperature->where'zeit'、$res->zeit->groupBy'katogorie_id'->get$mix=Ergebnisse::where'katogorie_id',$kat->where函数$q使用$result{foreach$result作为$item{$q->或where函数$q使用$item{$q->where'temperature',$item->temperature->where'zeit',$item->zeit;}->groupBy'name\u id'->get;我在@Alexey的帮助下解决了这个问题Mezenin@HassanHaroon$array是一个包含数据的数组。只需使用你在应用程序中使用的变量名。我对laravel和orm是新手。我现在这么做了,它说的是定义好的变量:data$result=Ergebnisse::where'name\u id',$nam->where'geometrie\u id',$geo->get$data=Ergebnisse::where'katogorie_id',$kat->where函数$q使用$result{foreach$result作为$item{$data=$data->或where函数$q使用$item{$q->where'temperature',$item['temp']->where'time',$item['time'];}}->get;