国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

數(shù)組排序函數(shù)-php數(shù)組函數(shù)(一)

call_me_R / 1819人閱讀

摘要:下列的所有排序函數(shù)都是直接作用于數(shù)組本身,而不是返回一個(gè)新的有序的數(shù)組。倒序并保持索引關(guān)系,按鍵名排序按鍵名倒序使用用戶(hù)自定義的比較函數(shù)對(duì)數(shù)組中的值進(jìn)行排序,要排序的數(shù)組需要用一種不尋常的標(biāo)準(zhǔn)進(jìn)行排序,那么應(yīng)該使用此函數(shù)。

數(shù)組排序,共13個(gè)

函數(shù)中有u的,能自定義比較函數(shù);有k的,按照鍵來(lái)排序;有r(reverse)的,倒序;有a(association)的,一定是鍵值關(guān)聯(lián),除了rsort() usort() sort() shuffle(),其他沒(méi)有a的都是鍵值關(guān)聯(lián),array_multisort()鍵值關(guān)聯(lián)的保持,數(shù)字類(lèi)型的不保持。

下列的所有排序函數(shù)都是直接作用于數(shù)組本身, 而不是返回一個(gè)新的有序的數(shù)組。

以下函數(shù)對(duì)于數(shù)組中相等的元素,它們?cè)谂判蚝蟮捻樞蚴俏炊x的。 (也即相等元素之間的順序是不穩(wěn)定的,即具有相同值的元素每次排序的結(jié)果都是不確定(關(guān)聯(lián)數(shù)組))。php7asort arsort uasort已實(shí)現(xiàn)穩(wěn)定排序,php5穩(wěn)定排序:http://php.net/manual/zh/func...

在對(duì)含有混合類(lèi)型值的數(shù)組排序時(shí)要小心,因?yàn)?sort() 可能會(huì)產(chǎn)生不可預(yù)知的結(jié)果。

1.array_multisort

可以用來(lái)一次對(duì)多個(gè)數(shù)組進(jìn)行排序,或者根據(jù)某一維或多維對(duì)多維數(shù)組進(jìn)行排序。

bool array_multisort ( array &$array1 [, mixed $array1_sort_order = SORT_ASC [, mixed $array1_sort_flags = SORT_REGULAR [, mixed $... ]]] )

排序類(lèi)型標(biāo)志:

SORT_REGULAR (默認(rèn))- 將項(xiàng)目按照通常方法比較(不修改類(lèi)型,區(qū)分大小寫(xiě),大寫(xiě)字母會(huì)排在小寫(xiě)字母之前)

SORT_NUMERIC - 按照數(shù)字大小比較

SORT_STRING - 按照字符串比較(區(qū)分大小寫(xiě))

SORT_LOCALE_STRING - 根據(jù)當(dāng)前的本地化設(shè)置,按照字符串比較。 它會(huì)使用 locale 信息,可以通過(guò) setlocale() 修改此信息。

SORT_NATURAL - 以字符串的"自然排序",類(lèi)似 natsort()

SORT_FLAG_CASE - 可以組合 (按位或 OR) SORT_STRING 或者 SORT_NATURAL 大小寫(xiě)不敏感的方式排序字符串。

1.1 如果有多個(gè)數(shù)組參數(shù)時(shí), $array2會(huì)根據(jù)$array1的結(jié)果排序,像MySQL的group by

1.2 不區(qū)分大小寫(xiě)的排序:

$array = array("Alpha", "atomic", "Beta", "bank");
$array_lowercase = array_map("strtolower", $array); // 先復(fù)制一個(gè)轉(zhuǎn)為小寫(xiě)數(shù)組

array_multisort($array_lowercase, SORT_ASC, SORT_STRING, $array);   // 先對(duì)小寫(xiě)數(shù)組排序,再排序原數(shù)組

print_r($array);

1.3 對(duì)數(shù)據(jù)庫(kù)結(jié)果進(jìn)行排序

function array_orderby()
{
    $args = func_get_args();
    $data = array_shift($args);
    foreach ($args as $n => $field) {
        if (is_string($field)) {
            $tmp = array();
            foreach ($data as $key => $row)
                $tmp[$key] = $row[$field];
            $args[$n] = $tmp;
            }
    }
    $args[] = &$data;
    call_user_func_array("array_multisort", $args);
    return array_pop($args);
}
2.sort

刪除原有的鍵名對(duì)數(shù)組排序(順序)

bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

sort($fruits, SORT_NATURAL | SORT_FLAG_CASE);排序結(jié)果和natcasesort()一樣。

3.rsort

對(duì)數(shù)組逆向排序

bool rsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
4.asort

保持鍵值關(guān)聯(lián)(association)。主要用于對(duì)那些單元順序很重要的結(jié)合數(shù)組進(jìn)行排序。

bool asort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
5.arsort

倒序并保持索引關(guān)系(association,reverse)

bool arsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
6.ksort

鍵名排序

bool ksort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
7.krsort

鍵名倒序

bool krsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
8.usort

使用用戶(hù)自定義的比較函數(shù)對(duì)數(shù)組中的進(jìn)行排序,要排序的數(shù)組需要用一種不尋常的標(biāo)準(zhǔn)進(jìn)行排序,那么應(yīng)該使用此函數(shù)。

bool usort ( array &$array , callable $value_compare_func )

$value_compare_func( mixed $a, mixed $b ) $a小于,等于或大于$b時(shí),該比較函數(shù)必須相應(yīng)地返回一個(gè)小于,等于或大于 0 的整數(shù)。

usort($a, array("TestObj", "cmp_obj"))對(duì)象屬性排序

在類(lèi)中調(diào)用:uasort($array, array($this,"value_compare_func"))

9.uasort

使用用戶(hù)自定義的比較函數(shù)對(duì)數(shù)組中的值進(jìn)行排序并保持索引關(guān)聯(lián)

bool uasort ( array &$array , callable $value_compare_func )
10.uksort

使用用戶(hù)自定義的比較函數(shù)對(duì)數(shù)組中的鍵名進(jìn)行排序

bool uksort ( array &$array , callable $key_compare_func )
11.natcasesort

不區(qū)分大小寫(xiě)字母的自然排序(排完字母再排數(shù)字),保持鍵值關(guān)聯(lián)

bool natcasesort ( array &$array )
12.natsort

用“自然排序”算法對(duì)數(shù)組排序,保持鍵值關(guān)聯(lián)

bool natsort ( array &$array )
13.shuffle

本函數(shù)打亂(隨機(jī)排列單元的順序)一個(gè)數(shù)組。鍵值不關(guān)聯(lián)

bool shuffle ( array &$array )

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/29101.html

相關(guān)文章

  • 10個(gè)必須掌握的PHP關(guān)聯(lián)數(shù)組使用技巧

    摘要:額外的數(shù)組元素可以象下面這樣追加如果你正在處理數(shù)字索引數(shù)組,你可能想使用顯示命名的函數(shù)前置和追加元素,如和函數(shù),但這些函數(shù)不能操作關(guān)聯(lián)數(shù)組。 在使用 PHP 進(jìn)行開(kāi)發(fā)的過(guò)程中,或早或晚,您會(huì)需要?jiǎng)?chuàng)建許多相似的變量,這時(shí)候你可以把數(shù)據(jù)作為元素存儲(chǔ)在數(shù)組中。數(shù)組中的元素都有自己的 ID,因此可以方便地訪問(wèn)它們。 關(guān)聯(lián)數(shù)組 關(guān)聯(lián)數(shù)組,它的每個(gè) ID 鍵都關(guān)聯(lián)一個(gè)值。在存儲(chǔ)有關(guān)具體命名的值的數(shù)...

    bawn 評(píng)論0 收藏0
  • [討論]php 排序系列的函數(shù)內(nèi)部的C實(shí)現(xiàn)是用了哪種排序算法?

    摘要:在算法中,比快速排序還快的,無(wú)疑是基數(shù)排序,粗略看了一下算法,可能是基礎(chǔ)排序中的桶排序。桶排序是穩(wěn)定的桶排序是常見(jiàn)排序里最快的一種,比快排還要快大多數(shù)情況下桶排序非常快,但是同時(shí)也非常耗空間以空間換時(shí)間 ext/standard/php_array.h https://github.com/php/php-src/blob/master/ext/standard/php_array....

    chanthuang 評(píng)論0 收藏0
  • PHP面試:盡可能多的說(shuō)出你知道的排序算法

    摘要:良好的排序算法具有進(jìn)行最少的比較和交換的特征。冒泡排序是一個(gè)基于比較的排序算法,被認(rèn)為是效率最低的排序算法之一。現(xiàn)在讓我們使用實(shí)現(xiàn)冒泡排序算法。插入排序到目前為止,我們已經(jīng)看到了兩種基于比較的排序算法。 預(yù)警 本文適合對(duì)于排序算法不太了解的新手同學(xué)觀看,大佬直接忽略即可。因?yàn)榭紤]到連貫性,所以篇幅較長(zhǎng)。老鐵們看完需要大概一個(gè)小時(shí),但是從入門(mén)到完全理解可能需要10個(gè)小時(shí)(哈哈哈,以我自己...

    objc94 評(píng)論0 收藏0
  • php 二維數(shù)組排序

    摘要:前提給定一個(gè)二維數(shù)組,請(qǐng)根據(jù)指定的數(shù)組寫(xiě)出最優(yōu)的排序。排序條件,指定數(shù)組如下估計(jì)大家都沒(méi)有什么問(wèn)題,排序嘛,簡(jiǎn)單的不要不要的方式一這應(yīng)該是最簡(jiǎn)單的方式了,直接使用現(xiàn)成的函數(shù),快捷的不要不要的。 前提 給定一個(gè)二維數(shù)組,請(qǐng)根據(jù)指定的數(shù)組key,寫(xiě)出最優(yōu)的排序。排序條件age asc,sex desc,指定數(shù)組如下: $arr = [ [id=>1, age=>1,...

    ashe 評(píng)論0 收藏0
  • PHP入門(mén)數(shù)組操作詳解

    摘要:像其他變量一樣,使用運(yùn)算符可以改變數(shù)組元素的內(nèi)容。數(shù)組的基本操作定義數(shù)組在中聲明數(shù)組的方式主要有兩種用函數(shù)聲明數(shù)組,直接為數(shù)組元素賦值。 概述要訪問(wèn)一個(gè)變量的內(nèi)容,可以直接使用其名稱(chēng)。如果該變量是一個(gè)數(shù)組,可以使用變量名稱(chēng)和關(guān)鍵字或索引的組合來(lái)訪問(wèn)其內(nèi)容。 像其他變量一樣,使用運(yùn)算符=可以改變數(shù)組元素的內(nèi)容。數(shù)組單元可以通過(guò) array[key] 語(yǔ)法來(lái)訪問(wèn)。showImg(https...

    ?xiaoxiao, 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<