国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

php - Interviewfrage: Artikelliste und Kategorieliste (beide zweidimensional), wenn die dem Artikel entsprechende Kategorie durch eine Schleife herausgenommen wird
迷茫
迷茫 2017-06-20 10:07:33
0
1
799

P.S.: Es sind alles zweidimensionale Arrays (numerischer Index)

Noch eine Frage: Wo ist die Kontrollstelle? Der Kontext des Lenovo-Interviews war vielleicht ein Funktionstest?

迷茫
迷茫

業(yè)精于勤,荒于嬉;行成于思,毀于隨。

Antworte allen(1)
Peter_Zhu

估計(jì)是考array_column函數(shù)。

# 數(shù)據(jù)準(zhǔn)備
$articles = [
    ['id' => 1, 'name' => '文章1', 'category_id' => 3],
    ['id' => 2, 'name' => '文章2', 'category_id' => 5],
    ['id' => 3, 'name' => '文章3', 'category_id' => 6]
];
$categories = [
    ['id' => 1, 'name' => '分類1'],
    ['id' => 2, 'name' => '分類2'],
    ['id' => 3, 'name' => '分類3'],
    ['id' => 4, 'name' => '分類4'],
    ['id' => 5, 'name' => '分類5'],
    ['id' => 6, 'name' => '分類6']
];

$categories = array_column($categories, NULL, 'id');
# 經(jīng)過上面這步之后,新的$categories值如下:
# [
#     '1' => ['id' => 1, 'name' => '分類1'],
#     '2' => ['id' => 2, 'name' => '分類2'],
#     '3' => ['id' => 3, 'name' => '分類3'],
#     '4' => ['id' => 4, 'name' => '分類4'],
#     '5' => ['id' => 5, 'name' => '分類5'],
#     '6' => ['id' => 6, 'name' => '分類6']
# ];
# array_column函數(shù)將一個(gè)二維矩陣型的數(shù)組中的列拆出來,輸出一維數(shù)組。
# 這個(gè)函數(shù)有三個(gè)參數(shù),第一個(gè)參數(shù)為源數(shù)組
# 第二個(gè)參數(shù)為取出來當(dāng)鍵值的列名,比如這個(gè)例子中對(duì)$categories可以取'id'或者'name',當(dāng)然也可以用NULL,表示將整個(gè)值(此處為['id' => 1, 'name' => '分類1']之類)原封不動(dòng)作為新的值
# 第三個(gè)參數(shù)為取出來當(dāng)鍵名的列,可選。如果不給或者為NULL,則自動(dòng)編號(hào)。
#
# 上面做的這個(gè)array_column操作,是讓之后遍歷文章時(shí),可以通過里面的category_id列的值直接找到對(duì)應(yīng)的$categories里面的值。

foreach($articles as &$article) {
    $cat_id = $article['category_id']; // 這步可以嵌入下面的代碼,是為了看起來沒那么多嵌套而已
    $article['category'] = $categories[$cat_id];
}

# 新的$articles:
# [
#     ['id' => 1, 'name' => '文章1', 'category_id' => 3, 'category' => ['id' => 3, 'name' => '分類3']],
#     ['id' => 2, 'name' => '文章2', 'category_id' => 5, 'category' => ['id' => 5, 'name' => '分類5']],
#     ['id' => 3, 'name' => '文章3', 'category_id' => 6, 'category' => ['id' => 6, 'name' => '分類6']]
# ];
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage