Удалить массив 0 в массиве PHP - PullRequest
0 голосов
/ 04 октября 2018

У меня есть 2 идентификатора продукта, и мой код:

$Final=array();
foreach ($ids as $me)
   {
     $op=DB::table('product')->where(['id'=>$me])->get();
     //$Final[]= $op;
      array_push($Final,$op);
   }

Этот код возвращает:

 array (size=1)
  0 => 
    array (size=1)
      0 => 
        array (size=15)
          'id' => string '34' (length=2)
          'title' => string 'گوسفند' (length=12)
          'title_url' => string 'sheep' (length=5)
          'code' => string 'eerer' (length=5)
          'code_url' => string 'eerer' (length=5)
          'content' => string '<p>sheep</p>
' (length=14)
          'cat' => string '68' (length=2)
          'price' => string '50000' (length=5)
          'product_state' => string '1' (length=1)
          'date' => string '' (length=0)
          'order_number' => string '0' (length=1)
          'Special' => string '0' (length=1)
          'View' => string '0' (length=1)
          'number_product' => string '1' (length=1)
          'discounts' => string '' (length=0)

Мне нужно удалить

array (size=2) 0 => array (size=1) 0 => 
$ids => filter id

для полученияномер продукта, например (22,34)

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

Если вы используете Any framework, тогда framwork предоставит нам несколько методов для выполнения запроса, с помощью которого можно получить все записи в одном запросе.

$op=DB::table('product')->whereIn('id'=>$ids)->get();

вы получите массив коллекций для всех продуктов.

0 голосов
/ 04 октября 2018

Я думаю, вы должны попробовать это.

$Final=array();
foreach ($ids as $me){
    $op=DB::table('product')->where(['id'=>$me])->get();

    if($op) {

        array_push($Final,$op[0]);
    }
}

Тогда вы получите эти значения.

array (size=2)
  0 => 
    array (size=15)
        'id' => string '34' (length=2)
  1 => 
    array (size=15)
        'id' => string '22' (length=2)
...