Home  >  Article  >  Backend Development  >  PHP array, associative array_PHP tutorial

PHP array, associative array_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:38:35880browse

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.
The elements in the array have their own IDs so they can be accessed easily.


Associative array
An associative array in which each ID key 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 declare and fill the array at the same time.

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

Additional array elements can be appended as follows:

$capitals['Arkansas'] = 'Little Rock'; 

If you are working with numerically indexed arrays, you may want to use explicitly named functions to prepend and append elements, such as the array_push() and array_unshift() functions, but these functions do not operate on associative arrays.

2. Delete array elements
If you want to remove an element from an array, use the unset() function, such as:

unset($capitals['California']); 

When using a numerical index 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 called $states, using the state capital as the index and the state name as the associated value. This is easily accomplished using the array_flip() function.

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

4. Merge arrays
Suppose the previous array is used by a web-based "FlashCard" service, and you want to provide a way to test students' knowledge of the US state capitals. You can use the array_merge() function to merge arrays containing states and capitals.

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

5. Edit array value
Suppose the data in the array contains casing errors and you want to correct these errors before inserting into the database, you can use the array_map() function to apply a callback to each array element.

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

6. Sort the array by pressing the key
FlashCard programs often use various sorts, such as alphabetical sorting. You can use the ksort() function to sort an associative array by key.

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

Because the array is passed to the ksort() function as a parameter, it means you no longer need to assign the sorted result to another variable.

7. Random array sorting
There is another random sorting technology involved in the FlashCard program. At this time, you have to use the shuffle() function to implement random sorting of array items.

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

If you don't need to shuffle 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.

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

Few people know that this function can also determine whether an array key exists. In this regard, it has the same function as the array_key_exists() function.

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

9. Search array
You may want to search an array resource so that users can easily retrieve associated states with a specific state. You can implement array searches through the array_search() function.

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

 

10、标准PHP库
标准PHP库(Standard PHP Library,SPL)为开发人员提供了许多数据结构,迭代器,接口,异常和其它以前PHP语言没有的功能,使用这些功能可以通过面向对象的语法遍历数组。

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

这仅仅是SPL众多伟大功能中的一个,一定要阅读PHP文档了解更多信息。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/735084.htmlTechArticle什么是数组? 在使用 PHP 进行开发的过程中,或早或晚,您会需要创建许多相似的变量。 无需很多相似的变量,你可以把数据作为元素存储...
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