天天看點

PHP數組學習筆記(3)

// array_count_values — 統計數組中所有的值

// array_count_values(array $array): array

// array_count_values() 傳回一個數組: 數組的鍵(必須是 int 或 string)是 array 裡單元的值; 數組的值是 array 單元的值出現的次數

// $array = array(1, "hello", 1, "world", "hello");

// $values = array_count_values($array);

// Array

// (

// [1] => 2

// [hello] => 2

// [world] => 1

// )

// echo '<pre>';

// print_r($values);

// echo '</pre>';

-------------------------------------------------------------------------------------------------------------------------

// count — 統計數組、Countable 對象中所有元素的數量

// count(Countable|array $value, int $mode = COUNT_NORMAL): int

// 用于數組時,統計數組中元素的數量

// 用于實作了 Countable 接口的對象時,傳回 Countable::count() 方法的傳回值

// 如果可選的 mode 參數設為 COUNT_RECURSIVE(或 1),count() 将遞歸地對數組計數。對計算多元數組的所有單元尤其有用

// $b[0] = 7;

// $b[5] = 9;

// $b[10] = 11;

// echo count($b);

// 3

// echo count(false); //錯誤

// echo count(null); //錯誤

// $a[0] = 1;

// $a[1] = 3;

// $a[2] = 5;

// echo count($a);

// 3

// $food = array(

// 'fruits' => array('orange', 'banana', 'apple'),

// 'veggie' => array('carrot', 'collard', 'pea')

// );

// echo count($food);

// 2

// echo count($food,1);

// 8

// class CountOfMethods implements Countable

// {

// private function someMethod()

// {

// }

// public function count():int

// {

// return count(get_class_methods($this));

// }

// }

// $obj = new CountOfMethods();

// echo count($obj);

// 2

-------------------------------------------------------------------------------------------------------------------------

// array_unique — 移除數組中重複的值

// array_unique(array $array, int $flags = SORT_STRING): array

// array_unique() 接受 array 作為輸入并傳回沒有重複值的新數組

// 注意鍵名保留不變。如果在指定了 flags 時存在多個相等的元素, 會保留第一個相等的元素的鍵(key)和值(value)

// SORT_REGULAR - 按照通常方法比較(不修改類型)

// SORT_NUMERIC - 按照數字形式比較

// SORT_STRING - 按照字元串形式比較

// SORT_LOCALE_STRING - 根據目前的本地化設定,按照字元串比較

// $input = array("a" => "green", "red", "b" => "green", "blue", "red");

// $result = array_unique($input);

// Array

// (

// [a] => green

// [0] => red

// [1] => blue

// )

// $input = array(4, "4", "3", 4, 3, "3");

// $result = array_unique($input);

// Array

// (

// [0] => 4

// [2] => 3

// )

// echo '<pre>';

// print_r($result);

// echo '</pre>';

// 注意, array_unique() 不能應用于多元數組

-------------------------------------------------------------------------------------------------------------------------

// count_chars — 傳回字元串所用字元的資訊

// count_chars(string $string, int $mode = 0): array|string

// 統計 string 中每個位元組值(0..255)出現的次數,使用多種模式傳回結果

// 0 - 以所有的每個位元組值作為鍵名,出現次數作為值的數組

// 1 - 與 0 相同,但隻列出出現次數大于零的位元組值

// 2 - 與 0 相同,但隻列出出現次數等于零的位元組值

// 3 - 傳回由所有使用了的位元組值組成的字元串

// 4 - 傳回由所有未使用的位元組值組成的字元串

// $data = 'Hello World.';

// foreach(count_chars($data,1) as $i=>$v)

// {

// chr — 從數字生成單位元組字元串

// echo $v .' - '. chr($i).'<br>';

// }

// 1 -

// 1 - .

// 1 - H

// 1 - W

// 1 - d

// 1 - e

// 3 - l

// 2 - o

// 1 - r

繼續閱讀