Home  >  Article  >  Backend Development  >  10 Operation Tips for PHP Associative Arrays_PHP Tutorial

10 Operation Tips for PHP Associative Arrays_PHP Tutorial

WBOY
WBOYOriginal
2016-07-21 15:14:14693browse

What is an array?
Sooner or later in the process of developing with PHP, you will need to create many similar variables.
Instead of having many similar variables, you can store data as elements in an array.
Elements in the array have their own IDs, so they can be accessed easily.
Associative array
Associative array, each ID key of which is associated with a value.
Using numeric arrays is not the best practice when storing data about specifically named values.
With associative arrays, we can use values ​​as keys and assign values ​​to them.
This article will introduce 10 techniques for operating PHP associative arrays. Proficient use can help you improve development efficiency.
1. Add array elements
PHP is a weakly typed language, which means you don’t need to explicitly declare an array and its size. Instead, you can declare and fill the array at the same time.
$capitals = array(
'Alabama' => 'Montgomery',
'Alaska' => 'Juneau',
'Arizona' => 'Phoenix'
) ; Additional array elements can be appended like this:
$capitals['Arkansas'] = 'Little Rock'; If you are dealing with numerically indexed arrays, you may want to prepend and append elements using explicitly named functions, e.g. array_push() and array_unshift() functions, but these functions cannot operate on associative arrays.
2. Delete array elements
If you want to delete an element from the array, please use the unset() function, such as:
unset($capitals['California']); Use When numerically indexing an array, there are more and more flexible ways to delete array elements. You can use the array_shift() and array_pop() functions to delete an element from the beginning and end of the array respectively.
3. Exchange keys and values
Suppose you want to create a new array named $states, using the state capital as the index and the state name as the associated value. It is easy to use the array_flip() function Easy to accomplish this task.

Copy code The code is as follows:

$capitals = array(
'Alabama' => 'Montgomery',
'Alaska' => 'Juneau',
'Arizona' => 'Phoenix'
);
$states = array_flip($capitals);
// $states = array(
// 'Montgomery' => string 'Alabama',
// 'Juneau' => string 'Alaska',
// 'Phoenix' => string 'Arizona'
// );

4. Merging Arrays
Assume that the previous array is used by a web-based "FlashCard" service and you want to provide a way to test it To learn about students' knowledge of the state capitals in the United States, you can use the array_merge() function to merge arrays containing states and capitals.
Copy code The code is as follows:

$stateCapitals = array(
'Alabama' => 'Montgomery',
'Alaska' => 'Juneau',
'Arizona' => 'Phoenix'
);
$countryCapitals = array (
'Australia' => 'Canberra' ,
'Austria' => 'Vienna',
'Algeria' => 'Algiers'
);
$capitals = array_merge($stateCapitals, $countryCapitals);

5. Edit array values ​​
Suppose the data in the array contains case errors. You want to correct these errors before inserting them into the database. You can use the array_map() function to Apply one callback per array element.
Copy code The code is as follows:

function capitalize($element)
{
$element = strtolower( $element);
return ucwords($element);
}
$capitals = array(
'Alabama' => 'montGoMEry',
'Alaska' => 'Juneau ',
'Arizona' => 'phoeniX'
);
$capitals = array_map("capitalize", $capitals);

6. Keys Sorting Arrays
FlashCard programs often use various sorts, such as alphabetical sorting. You can use the ksort() function to sort associative arrays by key.
Copy code The code is as follows:

$capitals = array(
'Arizona' => 'Phoenix',
'Alaska' => 'Juneau',
'Alabama' => 'Montgomery'
);
ksort($capitals);

because of array is passed to the ksort() function as a parameter, meaning you no longer need to assign the sorted results to another variable.
7. Random array sorting
The FlashCard program also involves another random sorting technology. At this time, you need to use the shuffle() function to implement random sorting of array items.
Copy code The code is as follows:

$capitals = array(
'Arizona' => 'Phoenix',
'Alaska' => 'Juneau',
'Alabama' => 'Montgomery'
);
shuffle($capitals);

If you don’t need to disrupt the order of the array and you just want to randomly select a value, then use the array_rand() function.
8. Determine whether the key and value exist
You can use the in_array() function to determine whether an array element exists.
Copy code The code is as follows:

$capitals = array(
'Arizona' => 'Phoenix',
'Alaska' => 'Juneau',
'Alabama' => 'Montgomery'
);
if (in_array("Juneau", $capitals))
{
echo "Exists!";
} else {
echo "Does not exist!";
}

Few people know that this function can also determine an array key Whether it exists, at this point, it has the same function as the array_key_exists() function.
Copy code The code is as follows:

$capitals = array(
'Arizona' => 'Phoenix',
'Alaska' => 'Juneau',
'Alabama' => 'Montgomery'
);
if (array_key_exists("Alaska", $capitals))
{
echo "Key exists!";
} else {
echo "Key does not exist!";
}

9. Search array
You may want to search array resources so that users can easily retrieve associated states with a specific state. You can implement array searches through the array_search() function.
Copy code The code is as follows:

$capitals = array(
'Arizona' => 'Phoenix',
'Alaska' => 'Juneau',
'Alabama' => 'Montgomery'
);
$state = array_search('Juneau', $capitals);
/ / $state = 'Alaska'

10. Standard PHP Library
The Standard PHP Library (SPL) provides developers with many data structures, iteration Converters, interfaces, exceptions and other features not previously available in PHP language can be used to traverse arrays through object-oriented syntax.
Copy code The code is as follows:

$capitals = array(
'Arizona' => 'Phoenix',
'Alaska' => 'Juneau',
'Alabama' => 'Montgomery'
);
$arrayObject = new ArrayObject($capitals);
foreach ($arrayObject as $state => $capital)
{
printf("The capital of %s is %s
", $state, $capital);
}
// The capital of Arizona is Phoenix
// The capital of Alaska is Juneau
// The capital of Alabama is Montgomery

This is just one of the many great features of SPL, be sure to Read the PHP documentation to learn more.

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/326330.htmlTechArticleWhat is an array? Sooner or later in the process of developing with PHP, you will need to create many similar variables. Instead of having many similar variables, you can store data as elements...
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