PHP学习 -- 数组相关的函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<?php

// 数组相关的函数

// 1. 排序函数

$arr = array(3,2,9,6,4,1,0);

echo '<pre>';

sort($arr); // 按照值顺序排 不保留下标 重排

// asort($arr); // 按照值顺序排 保留下标

// ksort($arr); // 按照键顺序排

// krsort($arr); // 按照键逆序排

//shuffle($arr);

print_r($arr);

<!-- more -->

shuffle($arr); // 随机排序

print_r($arr);

// 2. 指针函数

echo '<hr>';

$arr1 = array('wnagyu',15,'hui',5,9,3,1);

echo current($arr1),'<br>'; // 查看当前指针

echo key($arr1),'<br>'; // 查看当前key

echo next($arr1),next($arr1),'<br>'; // 移动指针到下一个

echo prev($arr1),'<br>'; // 移动指针到上一个

echo key($arr1),'<br>';

echo '<pre>';

print_r($arr1);

echo '<hr>';

echo end($arr1),'<br>'; // 重置指针 返回最后一个值

echo reset($arr1),'<br>'; // 重置指针 返回第一个值

// 3. 其他函数

// array_push() 往数组中加入一个元素 (数组后面)

// array_pop() 从数组中取出一个元素 (数组后面)

// array_shift() 从数组中取出一个元素 (数组前面)

// array_unshift() 往数组中加入一个元素 (数组前面)

$arr2 = array('tg',5,'po',1,3,9,12,56);

// 模拟数据结构

// 栈 先进后出

array_push($arr2,45);

echo '<pre>';

print_r($arr2);

array_pop($arr2);

echo '<pre>';

print_r($arr2);

// 队列 先进先出

// array_push() 后进 array_shift() 先出

// array_unshift() 前进 array_pop() 后出

$arr3 = [1,3,6,9,15,8];

echo '<pre>';

print_r(array_reverse($arr3)); // 反转数组

var_dump(in_array(1,$arr3)); // 查找值是否存在于数组中,返回true/false

var_dump(in_array(123,$arr3));

print_r(array_keys($arr3)); // 返回下标 数组

print_r(array_values($arr3));// 返回值 数组