Home  >  Article  >  Backend Development  >  PHP&&& Array - CSDN Blog

PHP&&& Array - CSDN Blog

不言
不言Original
2018-04-03 10:53:431417browse

This article introduces array issues in PHP. Now I share it with you. It can also be a reference for friends in need. Let’s take a look together.

Overview

We know that in the PHP programming language, arrays are used very frequently and are used in almost every script. PHP comes with a large number of excellent functions for operating arrays for our use. This article will classify and summarize the use of these array functions for your convenience in the future.

Create

1. range()

Create an array with a specified range:

$arr1 = range(0, 10);     # array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)$arr2 = range(0, 10, 2);  # array(0, 2, 4, 6, 8, 10)$arr3 = range('a', 'd');  # array('a', 'b', 'c', 'd')$arr4 = range('d', 'a');  # array('d', 'c', 'b', 'a')
2. compact ()

Create an array containing variable names and their values:

$number = 10;
$string = "I'm PHPer";
$array  = array("And", "You?");
$result = compact("number", "string", "array"); # array('number'=>10, 'string'=>"I'm PHPer", 'array'=>array("And", "You?"))
3. array_combine()

Create an array with an An array with the value as its key and the value of another array as its value:

$key    = array("1", "3", "5", "7", "9");
$value  = array("I", "Am", "A", "PHP", "er");
$result = array_combine($number,$array);     # array('1'=>I, '3'=>'Am', '5'=>'A', '7'=>'PHP', '9'=>'er')

Traversal

1. for Loop
$arr = range(0, 10);for($i = 0; $i < count($arr);  $i++) {    echo $arr[$i];
}
Disadvantages: Only indexed arrays can be traversed.
2. while Loop
$products = array(&#39;apple&#39;=>3, 'milk'=>6, 'eggs'=>10);while(list($product, $quantity) = each($products)) {    echo $product . '-' . $quantiry;
}
Disadvantage: After the traversal is completed, the array cannot be traversed for the second time (the internal pointer of the array points to the last element).
3. foreach Loop
$products = array('apple'=>3, 'milk'=>6, 'eggs'=>10);foreach($products as $product => $quantity) {    echo $product . '-' . $quantiry;
}

Operation key or value

unset() — Delete array members or arrays
in_array() — Check whether a certain value exists in the array
array_key_exists() — Check whether the given key name or index exists in the array
array_search() — Searches for a given value in the array, and returns the corresponding key name if successful

$array = array(1, 2, 3);unset($array); # array()$fruit = array('apple' => 'goold','orange' => 'fine','banana' => 'OK');if(in_array('good', $fruit)) {    echo 'Exit';
}

$search_array = array('first' => 1, 'second' => 4);if (array_key_exists('first', $search_array)) {    echo "Exit";
}

$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
$key = array_search('green', $array); # $key = 2;

array_keys() — Returns some or all of the keys in the array Key name
array_values() — Returns all values ​​in the array

$array  = array('apple'=>'good', 'orange'=>'fine', 'banana'=>'ok');
$keys   = array_keys($array);   # array('apple', 'orange', 'banana')$values = array_values($array); # array('good', 'fine', 'ok')

array_unique() — Removes duplicate values ​​from the array

$input  = array(4, '4', '3', 4, 3, '3');
$result = array_unique($input); # array(4, '3')

array_flip() — Swap the keys and values ​​in the array

$input  = array('oranges', 'apples', 'pears');
$result = array_flip($input); # array('oranges'=>0, 'apples'=>1, 'pears'=>2)

array_count_values() Count all the values ​​in the array

$input  = array(1, 'hello', 1, 'world', 'hello');
$result = array_count_values($input); # array('1'=>2, 'hello'=>2, 'world'=>1)

Sort

1. sort() and rsort()

Sort the array in ascending or descending order:

$fruits = array();
sort($fruits);  # array('apple', 'banana', 'lemon', 'orange')rsort($fruits); # array('orange', 'lemon', 'banana', 'apple')
2. asort() and arsort()

Sort associative arrays (by element value) in ascending or descending order and maintain index relationships:

$fruits = array('d'=>'lemon', 'a'=>'orange', 'b'=>'banana', 'c'=>'apple');
asort($fruits);  # array('c'=>''apple', 'b'=>''banana', 'd'=>'lemon', 'a'=>'orange')arsort($fruits); # array('a'=>'orange', 'd'=>'lemon', 'b'=>''banana', 'c'=>''apple')
3. ksort()

Sort the array by key name:

$fruits = array('d'=>'lemon', 'a'=>'orange', 'b'=>'banana', 'c'=>'apple');
ksort($fruits); # array('a'=>'orange', 'b'=>'banana', 'c'=>'apple', 'd'=>'lemon')
4. shuffle()

Randomly shuffle Random array sorting:

$numbers = range(1, 5);
shuffle($numbers); # array(3, 2, 5, 1, 4)

Stack and queue

array_push() — Push one or more elements to the end of the array (push)
array_pop() — Pop the last unit of the array off the stack

$stack = array('orange', 'banana');

array_push($stack, 'apple", 'raspberry'); # array('orange', 'banana', 'apple', 'raspberry')

$fruit = array_pop($stack);  #array('orange', 'banana', 'apple')

array_unshift() — Insert one or more units at the beginning of the array
array_shift() — Move the cells at the beginning of the array out of the array

$queue = array('orange', 'banana');

array_unshift($queue, 'apple", 'raspberry'); # array('apple', 'raspberry', 'orange', 'banana')

$fruit = array_shift($queue); # array('raspberry', 'orange', 'banana')

Split, fill, merge

array_slic() — Remove a segment from the array
array_splice() — Remove part of an array and replace it with another value

$input  = array('a', 'b', 'c', 'd', 'e');
$result = array_slice($input, 2); # array('c', 'd', 'e')$input = array('red', 'green', 'blue', 'yellow');
array_splice($input, 2, 1); # array('red', 'green', 'yellow')

array_pad() — Fill an array with a value of the specified length

$input  = array(12, 10, 9);
$result = array_pad($input, 5, 0);   # array(12, 10, 9, 0, 0)$result = array_pad($input, -7, -1); # array(-1, -1, -1, -1, 12, 10, 9)

array_fill() — Fills an array with the given values ​​

$a = array_fill(5, 3, 'a');     # array(5=>'a', 6=>'a', 7=>'a')$b = array_fill(-2, 3, 'pear'); # array(-2=>'a', 0=>'a', 1=>'a')

array_fill_keys() — Fills the array with the specified keys and values ​​

$keys   = array('foo', 5, 10, 'bar');
$result = array_fill_keys($keys, 'a'); # array('foo'=>'a', 5=>'a', 10=>'a', 'bar'=>'a')

array_merge() — Merge one or more arrays

$array1 = array('data0');
$array2 = array('data1');
$result = array_merge($array1, $array2); # array('data0', 'data1')

Other functions

1. array_walk()

Use a user-defined function to perform callback processing on each element in the array (change the original array):

$a = array(1, 2, 3, 4, 5);
array_walk($a, function(&$value, $key) {
    ++$value;
}); # array(2, 3, 4, 5, 6)
2. array_map()

Apply the callback function to On the cells of the given array (the original array is not changed, and a new array is generated as the result):

$a = array(1, 2, 3, 4, 5);
$b = array_map(function($item) {    return $item + 1;
}, $a); # array(2, 3, 4, 5, 6)
3. array_rand()

Randomly taken from the array One or more elements:

$input  = array('apple', 'banana', 'lemon', 'orange');
$result = array_rand($input, 2); # array('banana', 'lemon')
4. array_diff()

Calculate the difference of array value:

$array1 = array('a' => 'green', 'red', 'blue', 'red');
$array2 = array('b' => 'green', 'yellow', 'red');
$result = array_diff($array1, $array2); # array('blue')

Related recommendations:

Simple arrangement of PHP arrays

Detailed explanation of PHP array functions

             

The above is the detailed content of PHP&&& Array - CSDN Blog. 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