php函式之陣列

2021-09-13 16:58:21 字數 1956 閱讀 5598

bool isset( mixed $val [, mix $...])

變數是否已設定並且非null。多個引數從左到右計算。

判斷null

$a=null;var_dump(isset($a));

bool(false)

判斷常量是否已設定用defined

定義常量 bool define( string $name, mixed $value [, $is_insensitive = false] )

返回乙個常量的值(常量名在變數裡)mixed constant( string $name )

tips

不可用於可變函式($bar()函式執行),需自己包裝

普通函式需要被php解析器(zend引擎分解成語言結構)

相關語言結構

require ( require_once 是函式)

include ( include_once 是函式)

empty ( !isset($var) || $var == false )

unset

print

echo

list

array 底層結構

die

bool array_key_exists( mixed $key, array $array)

陣列是否有鍵key。

isset對null值的區別

$arr=['a'=>null];var_dump(array_key_exists('a',$arr),isset($arr['a']));

bool(true) bool(false)

isset()的效率高

bool in_array( mixed $needle, array $haystack[, bool $strict = false])

檢查陣列 haystack 中是否存在 needle 值。strict 是否嚴格檢查型別。

區分大小寫

當有數字字串時,會將字串型數字轉為長整形後比較

鬆散比較下,任何string都等於true

in_array(0, ['ddd',99]) //true string轉換為int後比較

in_array('a', [true, 'b']) //ture

mixed array_search ( mixed $needle, array $haystack[, bool $strict = false])

在陣列中搜尋指定的值,如果成功返回首個相應的鍵名。strict 檢查型別。

檢查結果使用 ===

區分大小寫

需要查詢所有符合的鍵名,使用 array_keys 實現

array array_keys ( array $array [, mixed $search_value = null [, bool $strict = false ]])

返回鍵名。search_value 只返回指定值得所有鍵名。

array array_values ( array $array )

返回陣列所有值。建立數字索引。

array array_flip ( array $array )

交換陣列中的鍵和值。

成功返回 array, 失敗返回 null

原陣列值需要能作為合法鍵名(需要是string或integer)。如果型別不對,出警告,且其值/鍵不會出現在結果裡

如果乙個值出現多次,只取最後乙個鍵名

array array_combine ( array $keys, array $values )

建立乙個陣列,keys陣列為鍵名,values為值。返回合併的array,如果單元數不同則返回false。

php之陣列函式

1.array array merge array array1 array array2 array 函式功能 將乙個或多個陣列的單元合併起來,乙個陣列中的值附加在前乙個陣列的後面。返回結果的陣列。如果輸入的陣列中有相同的字串鍵名,則該鍵名後面的值將覆蓋前乙個值。然而,如果陣列包含數字鍵名,後面的...

php函式之陣列

bool isset mixed val mix 變數是否已設定並且非null。多個引數從左到右計算。判斷null a null var dump isset a bool false 判斷常量是否已設定用defined 定義常量 bool define string name,mixed valu...

PHP初學之陣列函式

陣列函式 1 count 計算陣列中的單元數目或物件中的屬性個數 intcount mixed var int mode count normal var 為陣列 物件,返回陣列的單元個數或物件的屬性個數 為null,返回0 為非陣列也非null,都返回1 mode 設為 count recursi...