Khóa PHP làm giá trị

Vòng lặp foreach chỉ hoạt động trên mảng và được sử dụng để lặp qua từng cặp khóa/giá trị trong một mảng

cú pháp

foreach ($mảng dưới dạng $value) {
mã được thực thi;
}

Đối với mỗi lần lặp lại, giá trị của phần tử mảng hiện tại được gán cho $value và con trỏ mảng được di chuyển một, cho đến khi nó chạm đến phần tử mảng cuối cùng

Nếu tên động, thì bạn phải có một cái gì đó như

$arr[$key]

điều đó có nghĩa là $key chứa giá trị của khóa

Bạn có thể sử dụng array_keys() để lấy TẤT CẢ các khóa của một mảng, e. g

$arr = array('a' => 'b', 'c' => 'd')
$x = array_keys($arr);

sẽ cho bạn

$x = array(0 => 'a', 1 => 'c');

If an associative array is used as the second parameter of array_fill_keys, then the associative array will be appended in all the values of the first array.
e.g.
$array1 = array(
    "a" => "first",
    "b" => "second",
    "c" => "something",
    "red"
);

$array2 = array(
    "a" => "first",
    "b" => "something",
    "letsc"
);

print_r(array_fill_keys($array1, $array2));
?>

________số 8_______

If you don't want to lose duplicates, and you're ok, with having the values in the flipped array in an array as well, you may use this:

PHP 7.4 - ^8

function array_flip_safe(array $array) : array
{
    return array_reduce(array_keys($array), function ($carry, $key) use (&$array) {
        $carry[$array[$key]] ??= [];
        $carry[$array[$key]][] = $key;
        return $carry;
    }, []);
}

?>

PHP 7.0 - ^7.3 (Time to upgrade to PHP 8 ^^)

function array_flip_safe(array $array) : array
{
    return array_reduce(array_keys($array), function ($carry, $key) use (&$array) {
        $carry[$array[$key]] = $carry[$array[$key]] ?? [];
        $carry[$array[$key]][] = $key;
        return $carry;
    }, []);
}

?>

PHP 5.4 - ^5.6 (Just don't)

function array_flip_safe(array $array)
{
    return array_reduce(array_keys($array), function ($carry, $key) use (&$array) {
        if (!isset($carry[$array[$key]])
                $carry[$array[$key]] = [];
        $carry[$array[$key]][] = $key;
        return $carry;
    }, []);
}

?>

$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
$value = $value * 2;
}
// $arr is now array(2, 4, 6, 8)

// without an unset($value), $value is still a reference to the last item: $arr[3]

foreach ($arr as $key => $value) {
// $arr[3] will be updated with each value from $arr...
echo "{$key} => {$value} ";
print_r($arr);
}
// ...until ultimately the second-to-last value is copied onto the last value

// output:
// 0 => 2 Array ( [0] => 2, [1] => 4, [2] => 6, [3] => 2 )
// 1 => 4 Array ( [0] => 2, [1] => 4, [2] => 6, [3] => 4 )
// 2 => 6 Array ( [0] => 2, [1] => 4, [2] => 6, [3] => 6 )
// 3 => 6 Array ( [0] => 2, [1] => 4, [2] => 6, [3] => 6 )
?>

// Using short array syntax.
// Also, works with array() syntax.
$arr1 = [1, 2, 3];
$arr2 = [...$arr1]; //[1, 2, 3]
$arr3 = [0, ...$arr1]; //[0, 1, 2, 3]
$arr4 = [...$arr1, ...$arr2, 111]; //[1, 2, 3, 1, 2, 3, 111]
$arr5 = [...$arr1, ...$arr1]; //[1, 2, 3, 1, 2, 3]

function getArr() {
return ['a', 'b'];
}
$arr6 = [...getArr(), 'c' => 'd']; //['a', 'b', 'c' => 'd']
?>

In addition to FatBat's response, if you'd like to find out the highest key in an array (assoc or not) but don't want to arsort() it, take a look at this:

$arr = [ '3' => 14, '1' => 15, '4' => 92, '15' => 65 ];

$key_of_max = array_search( max($arr) , $arr);

?>

Làm cách nào để tìm kiếm khóa trong mảng và trả về giá trị trong PHP?

hàm Array_search() trong PHP . Hàm trả về khóa cho val nếu nó được tìm thấy trong mảng. Nó trả về FALSE nếu không tìm thấy. Nếu val được tìm thấy trong mảng arr nhiều lần, thì khóa khớp đầu tiên được trả về.

chìa khóa là gì

Trong mã PHP. $featured là mảng kết hợp được lặp qua và vì $key => $value có nghĩa là mỗi khi vòng lặp chạy và chọn một cặp khóa-giá trị từ mảng, nó sẽ lưu khóa vào . .

Làm cách nào để tạo giá trị mảng làm khóa trong PHP?

Cú pháp cho mảng được lập chỉ mục. mảng (giá trị1, giá trị2, giá trị3, v.v. ) Cú pháp cho mảng kết hợp. mảng(key=>value,key=>value,key=>value,v.v. )

Làm cách nào để lấy khóa dựa trên giá trị trong PHP?

Nếu bạn có một giá trị và muốn tìm khóa, hãy sử dụng array_search() như thế này. $arr = mảng ('đầu tiên' => 'a', 'thứ hai' => 'b', ); .