Home >Backend Development >PHP Problem >How to convert key name to key value in php associative array

How to convert key name to key value in php associative array

PHPz
PHPzOriginal
2023-04-24 15:49:28653browse

In PHP, associative array is a very common data type. It is composed of key-value pairs, and each key is unique. Sometimes, we need to process data in an associative array by key value rather than by key name. In this case, we can convert the key names of the associative array into key values. This article will explain how to implement this function.

1. Use array_flip function

php built-in functionarray_flip()You can exchange the keys and values ​​of the array. Therefore, we can first use the array_flip() function to swap the keys and values ​​of the original array, and then use normal array functions to process the array. The following is a simple sample code:

$array = array('a'=>'apple', 'b'=>'banana', 'c'=>'cherry');
$array = array_flip($array);//键值交换
print_r($array);//输出结果为:Array ( [apple] => a [banana] => b [cherry] => c )

In the above code, we first define an associative array. Then, we use array_flip() to swap its key names and key values. Finally, we used the print_r() function to output the new array.

2. Use the array_walk function

php built-in functionarray_walk()You can apply a callback function to each element of the array, allowing you to perform more complex operations on the array . Using the array_walk() function, we can define an anonymous function that is applied to each element and converts it into a key value.

$array = array('a'=>'apple', 'b'=>'banana', 'c'=>'cherry');
array_walk($array, function(&$value, $key){
    $value = $key;
});
print_r($array);//输出结果为:Array ( [a] => a [b] => b [c] => c )

In the above code, we first define an associative array. Then, we use the array_walk() function to apply the defined anonymous function to each element in the array. An anonymous function sets the value of an element to the element's key name. Finally, we used the print_r() function to output the new array.

3. Use the foreach loop

The foreach loop in php can traverse all elements in the associative array. In each loop step, we can use the key name to get the value of the element. Using a foreach loop, we can define a new array and use the keys of the original array as the keys of the new array. The following is a sample code:

$array = array('a'=>'apple', 'b'=>'banana', 'c'=>'cherry');
$new_array = array();
foreach($array as $key=>$value){
    $new_array[$value] = $key;
}
print_r($new_array);//输出结果为:Array ( [apple] => a [banana] => b [cherry] => c )

In the above code, we first define an associative array. We then use a foreach loop to iterate through the array. In each loop step, we use the key name as the value and store it into a new array. Finally, we used the print_r() function to output the new array.

Summary

This article introduces three methods to convert the key names of PHP associative arrays into key values. These methods include using the built-in function array_flip(), using the array_walk() function, and using a foreach loop. Based on your actual needs, it is very important to choose the appropriate method to convert the key names of the associative array.

The above is the detailed content of How to convert key name to key value in php associative array. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn