[英]How can I replace my array key to value in other key?
array(22) {
[0]=>
array(5) {
["name"]=>
string(33) "White shirt - blue logo"
["price"]=>
string(5) "10.00"
["img"]=>
string(5) "2.jpg"
["text"]=>
string(865) "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
["url"]=>
string(26) "voltarity-white-red-shirt2"
}
another array...
another array...
}
因此,我想將數組鍵[0]更改為[“ url”]中的值,可以嗎? 順便說一句,該數組是從mysql數據庫創建的。
只需使用“ url”作為鍵來創建一個新的關聯數組。
$newArray = [];
foreach ($oldArray as $row) {
$newArray[$row['url']] = $row;
}
顯然,如果您有2行的'url'值相同,則第二行將覆蓋第一行。 如果需要允許多個行的“ url”具有相同的值,則可以使用此循環。
$newArray = [];
foreach ($oldArray as $row) {
if (isset($newArray[$row['url']]) {
if (is_array($newArray[$row['url']])) {
$newArray[$row['url']][] = $row;
} else {
$newArray[$row['url']] = array($newArray[$row['url']], $row);
}
} else {
$newArray[$row['url']] = $row;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.