在php陣列學習摘錄部分了解到最基本的php陣列的建立和陣列元素的顯示。需要深入學習下php陣列的相關操作。首先接觸的就是陣列元素的公升序、降序的排序問題。
1、快速建立陣列的函式range()
比如range()函式可以快速建立從1到array的數字陣列:
以下為引用的內容:
<?php
$numbers=range(1,array);
echo $numbers[1];
?>
當然,使用range(array,1)則建立了array到1的數字陣列。同時,range()還可以建立從a到z 的字元陣列:
以下為引用的內容:
<?php
$numbers=range(a,z);
foreach ($numbers as $mychrs)
echo $mychrs." ";
?>
使用字元陣列時注意大小寫,比如range(a,z)和range(a,z)是不一樣的。
range()函式還具有第三個引數,該引數的作用是設定步長,比如range(1,array,3)建立的陣列元素是:1、4、7
2、php中常規陣列的排序
一般陣列中的各元素均以字元或數字表現的,所以可對陣列元素進行公升序排列,該功能函式為sort()。比如:
以下為引用的內容:
<?php
$people=array(』name』,』***』,』nation』,』birth』);
foreach ($people as $mychrs)
echo $mychrs." ";
sort($people);
echo "
---排序後---
";foreach ($people as $mychrs)
echo $mychrs." ";
?>
公升序排序後的陣列元素顯示為 birth name nation ***,當然,sort()函式是區分字母大小寫的(字母從大到小的順序是:a…z…a…z)
sort()函式還具有第二引數,用來說明公升序的規則是用來比較數字還是字串的。比如:
以下為引用的內容:
<?php
echo "---按數字公升序排序---
";$num2=array(』26』,』3』,);
sort($num2,sort_numeric);
foreach ($num2 as $mychrs)
echo $mychrs." ";
echo "
---按字元公升序排序---
";$num3=array(』26』,』3』);
sort($num3,sort_string);
foreach ($num3 as $mychrs)
echo $mychrs." ";
?>
sort_numeric和sort_string用來宣告按數字或字元的公升序排列。如果按照數字公升序排列是:3,26;但如果按照字元公升序排列則是:26,3了。
php中除了公升序函式以外,還有降序或稱反向排列的函式,就是rsort()函式,比如:
以下為引用的內容:
$num1=range(1,array);
rsort($num1);
這裡其實就相當於range(array,1)
3、php中關聯陣列的排序
以下為引用的內容:
$peoples=array(』xm』=>』name』,』xb』=>』***』,』mz』=>』nation』,』cs』=>』birth』);
使用sort($peoples)預設即是按照元素定義值的公升序排序,在關聯陣列中可使用asort()函式表示,關聯陣列中最主要的則是可按照關鍵字(如xm、xb、mz等)的公升序排序,該方法是用函式ksort()函式。
以下為引用的內容:
<?php
$peoples=array(』xm』=>』name』,』xb』=>』***』,』mz』=>』nation』,』cs』=>』birth』);
foreach ($peoples as $mychrs)
echo $mychrs." ";
echo "
--按元素值公升序排列--
";asort($peoples);
foreach ($peoples as $mychrs)
echo $mychrs." ";
echo "
--按關鍵字公升序排列--
";ksort($peoples);
foreach ($peoples as $mychrs)
echo $mychrs." ";
?>
和常規陣列擁有sort()公升序函式的反向排序rsort()降序函式相對應的,關聯陣列也有對應的降序函式:asort()函式和arsort()函式、ksort()函式和krsort()函式。
4、php陣列元素隨機排序
php中使用shuffle()函式將陣列元素進行隨機的重新排序,比如:
以下為引用的內容:
<?php
$fer=array(』cnbruce』,』cnrose』,』cnjames』,』cnanne』);
shuffle($fer);
foreach ($fer as $mychrs)
echo $mychrs." ";
?>
每次都會顯示不同的排序組合
5、php陣列按原順序反向排序
php中可使用array_reverse()函式將陣列元素按原順序反向排序。比如:
以下為引用的內容:
<?php
$fer=array(』cnbruce』,』cnrose』,』cnjames』,』cnanne』);
foreach ($fer as $mychrs)
echo $mychrs." ";
$fer=array_reverse($fer);
echo "
--按原順序反向--
";foreach ($fer as $mychrs)
echo $mychrs." ";
?>
cnbruce cnrose cnjames cnanne
--按原順序反向--
cnanne cnjames cnrose cnbruce
注意這裡的 $fer=array_reverse($fer); 在此之前的任何排序函式均只是宣告引用,並沒有對原有陣列進行重新定義,但當我除錯該函式時則需要重新定義。這是因為array_reverse()是返回原陣列修改後的副本,如果不需要原有陣列,可對原陣列重新定義達到覆蓋的目的,否則就另外定義陣列儲存副本,比如:$fer_bak=array_reverse($fer);
「華夏名網」 和 是成都飛數科技****的網路服務品牌,專業經營虛擬主機,網域名稱註冊,vps,伺服器租用業務。公司建立於2023年,經過6年的高速發展,「華夏名網」已經成為我國一家知名的網際網路服務提供商,被國外權威機構webhosting.info評價為十大idc服務商之一。
華夏名網**導航: 虛擬主機
雙線主機
主機網域名稱註冊
cn網域名稱
網域名稱伺服器租用
酷睿伺服器
vpsvps主機
PHP中陣列元素公升序 降序及重新排序的函式
在php陣列學習摘錄部分了解到最基本的php陣列的建立和陣列元素的顯示。需要深入學習下php陣列的相關操作。首先接觸的就是陣列元素的公升序 降序的排序問題。1 快速建立陣列的函式range 比如range 函式可以快速建立從1到9的數字陣列 numbers range 1,9 echo number...
iOS iOS之陣列的排序(公升序 降序及亂序)
nsmutablearray pricearray nsmutablearray arraywithobjects 0.2 5 44 67 98.5 1.55 nil pricearray sortusingcomparator nscomparisonresult id nonnull obj1,...
php陣列中刪除元素,再重新索引
之前如果要在某個陣列中刪除乙個元素,我是直接用的unset,也不管unset之後會發生什麼。但今天看到的東西卻讓我大吃一驚 arr array a b c d unset arr 1 print r arr print r arr 之後,結果卻不是那樣的,最終結果是 array 0 a 2 c 3 ...