簡體   English   中英

我如何在php函數中返回一個數組

[英]How can i return an array in php function

我需要函數中的返回數組。 當我使用返回這個數組()時:

         function menuOlustur($ana_kategoriler){
         global $db;
         $alt_kategori_durum = '';
         $alt_kategori;
             foreach ($ana_kategoriler as $kategori) {
                 $alt_kategori = $db->rawQuery('select * from s_kategoriler where kategori = ' . $kategori['id'] . ' and durum=1 order by sira asc');              
             }
             return $alt_kategori;
     }

我正在使用它返回數組中的另一個索引。

         function menuOlustur($ana_kategoriler){
         global $db;
         $alt_kategori_durum = '';
         $alt_kategori;
             foreach ($ana_kategoriler as $kategori) {
                 $alt_kategori[] = $db->rawQuery('select * from s_kategoriler where kategori = ' . $kategori['id'] . ' and durum=1 order by sira asc');              
             }
             return $alt_kategori;
     }

我的 $ana_kategoriler 是一個數組,它是一個這樣的調用查詢

$ana_k_cek = $db->rawQuery('select id, kategori, adi_' . $dil . ' as adi,link_' . $dil . ' as link from s_kategoriler where m_id=5 and durum=1 order by sira asc ');

我能做什么?

編輯:固定查詢,不應該是 kategori = 1,2,3,4,而是 kategory IN(1,2,3,4)

我建議將您的代碼更改為:

function menuOlustur($ana_kategoriler){
    global $db;
    /* first - collect all ids */
    $ids = array();
    foreach ($ana_kategoriler as $kategori) {
        $ids[] = $kategori['id'];         
    }
    /* return empty array if there is no ids, or return result of single query matching all results with given ids */
    return count($ids) > 0 ? $db->rawQuery('select * from s_kategoriler where kategori IN( ' . implode(",",$ids)  . ') AND durum=1 order by sira asc') : array();   
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM