
批改狀態(tài):合格
老師批語:寫的很不錯!在開發(fā)中一定不要用中文作為鍵名,關(guān)于其它數(shù)組函數(shù)可以自己自學。
<?php
$arr = ['姓名' => '張三','年齡' => 22,'性別' => '男'];
print_r(array_keys($arr));
var_dump(array_key_exists('姓名',$arr));
echo '<hr>';
var_dump(array_key_exists('身高',$arr));
//返回第一個鍵名
echo array_key_first($arr);
//返回最后一個鍵名
echo array_key_last($arr);
$arr = [1 => 100,'name' => '武松','age' => '31',20,200 => 50];
print_r(array_values($arr));
var_dump(in_array('武松',$arr));
echo '<hr>';
var_dump(in_array('宋江',$arr));
//找到了返回元素值對應的鍵名,找不到返回false
var_dump(array_search('css3',$arr));
echo '<hr>';
var_dump(array_search('武松',$arr));
$arr =['1' => '孫悟空','2' => '唐三藏','3' => '孫悟空','4' => '沙悟凈'];
print_r($arr);
echo '<hr>';
print_r(array_unique($arr));
$arr = [2,2,3];
echo '數(shù)組求和:'.array_sum($arr).'<hr>';
echo '數(shù)組求積:'.array_product($arr);
<?php
//棧與隊列
//棧是添加與刪除受限的一種數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)的增刪僅允許在一端進行,LIFO,最后進先出
$arr = [];
//array_push:向數(shù)組尾部插入一個或多個元素
echo '入棧:'.array_push($arr,1,2,3);
print_r($arr);
//array_pop():函數(shù)用來刪除數(shù)組末尾的元素(出棧)返回值是刪除的值
echo '<br>出棧:'.array_pop($arr);
echo '<br>出棧:'.array_pop($arr);
echo '<br>出棧:'.array_pop($arr);
//隊列:先進先出
//array_unshift():函數(shù)用于向數(shù)組插入新元素。新數(shù)組的值將被插入到數(shù)組的開頭
echo '<br>在棧的頭部新增元素:'.array_unshift($arr,4,5,6).'<br>';
print_r($arr);
echo '<br>在棧的頭部刪除元素:'.array_shift($arr);
echo '<br>在棧的頭部刪除元素:'.array_shift($arr);
echo '<br>在棧的頭部刪除元素:'.array_shift($arr);
//array_shift():刪除數(shù)組中的第一個元素,并返回被刪除元素的值
<?php
//數(shù)組的排序
$arr = [100,'b','a','d',50,2,15,5];
print_r($arr);
echo '<br>';
//將元素從低到高排列
sort($arr);
print_r($arr);
//asort() 函數(shù)對關(guān)聯(lián)數(shù)組按照值進行升序排序
$arr = [100 => 10,10=>50,50=>20,'a' => 10];
print_r($arr);
echo '<br>';
asort($arr);
print_r($arr);
$arr = [100 => 10,10=>50,50=>20,'a' => 10];
print_r($arr);
echo '<br>';
ksort($arr);
print_r($arr);
$arr = [100 => 10,10=>50,50=>20,'a' => 10];
print_r($arr);
echo '<br>';
krsort($arr);
print_r($arr);
$arr = [20,5,62,45,90];
print_r($arr);
echo '<br>';
usort($arr,function($a,$b){
return $a - $b;
});
print_r($arr);
$arr = ['a5','a2','a8','a6'];
print_r($arr);
echo '<br>';
natsort($arr);
print_r($arr);
<?php
//array_slice():從數(shù)組中取出一部分元素
$arr = ['姓名' => '張三','年齡' => 20,'身高' => 170,'愛好' => '打籃球'];
//省略最后一個值默認獲取所有值
print_r(array_slice($arr,0));
echo '<hr>';
print_r(array_slice($arr,0,2));
$arr = [1,2,3,4,5,6];
print_r($arr);
//刪除
echo '<hr>';
print_r(array_splice($arr,0,2));
echo '<hr>';
print_r($arr);
//返回被刪除元素組成的數(shù)組
//替換
echo '<hr>';
print_r(array_splice($arr,0,2,[100,200]));
echo '<hr>';
print_r($arr);
<?php
$arr = ['孫悟空','豬八戒','沙悟凈','白龍馬'];
$arr2 = [1,2,3,4];
$arr3 = array_combine($arr,$arr2);
print_r($arr3);
print_r(array_merge($arr,$arr2));
<?php
//array_filter():只返回元素可以轉(zhuǎn)為true的元素
$arr = [1,'name',true,false,0,'0',null,''];
print_r($arr);
print_r(array_filter($arr));
//array_map():為數(shù)組中的每個元素應用指定的回調(diào)函數(shù)進行處理,并返回新數(shù)組
$arr = ['name',[1,2,3],(new class{public $name = '張三';public $age = 22;}),100];
$res = array_map(function($i){
switch (gettype($i)){
case 'object':
$i = get_object_vars($i);
$i = implode(',',$i);
break;
case 'array':
$i = implode(',',$i);
}
return $i;
},$arr);
print_r($res);
<?php
//$arr = ['cat','dog','pig','orange'];
//extract():將關(guān)聯(lián)數(shù)組拆分為變量
$config = ['name' => '張三','age' => 23,'sex' => '男'];
extract($config);
echo $name,$age,$sex;
//compact():將一組變量組裝成關(guān)聯(lián)數(shù)組
$id = 1;
$name = '張三';
$sex = '男';
print_r(compact('id','name','sex'));
array_keys():獲取數(shù)組鍵名
array_key_exists():判斷某個鍵名是否存在,返回布爾值
array_key_first():返回第一個鍵名
array_key_last():返回最夠一個鍵名
array_values():獲取數(shù)組所有的值
in_array():判斷某個值是否存在,返回布爾值
array_search():找到了返回元素值對應的鍵名,找不到返回false
arrar_unique():刪除重復值
array_push:向數(shù)組尾部插入一個或多個元素(進棧)
array_pop():函數(shù)用來刪除數(shù)組末尾的元素(出棧)返回值是刪除的值
array_unshift():函數(shù)用于向數(shù)組插入新元素,新數(shù)組的值將被插入到數(shù)組的開頭
array_shift():刪除數(shù)組中的第一個元素,并返回被刪除元素的值
sort():升序排列,鍵名重新生成
asort():按照值進行升序排列,鍵名不會重新生成
ksort():按鍵進行升序排列
krsort():按鍵進行降序排列
usort():自定義排序
natsort():自然排序
array_slice():從數(shù)組中取出一部分元素
array_splice():實現(xiàn)增刪改
array_combine():合并數(shù)組
array_merge() 函數(shù)用于把一個或多個數(shù)組合并為一個數(shù)組
array_filter():只返回元素可以轉(zhuǎn)為true的元素
array_map():為數(shù)組中的每個元素應用指定的回調(diào)函數(shù)進行處理,并返回新數(shù)組
extract():將關(guān)聯(lián)數(shù)組拆分為變量
compact():將一組變量組裝成關(guān)聯(lián)數(shù)組
微信掃碼
關(guān)注PHP中文網(wǎng)服務號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號