array_keys($array);//獲取陣列(字典)的所有鍵值,返回乙個鍵值陣列。
array_values($array)://獲取陣列的所有value值,飯回乙個陣列。
<?php
$json = ''; //註明:value不帶雙引號時,其值只能是數字。【!!!注意:大括號兩邊只能是單引號,不能是雙引號】
帶雙引號時,可為任意字元。如:
//print_r("
");");//var_dump(json_decode($json));
//var_dump(json_decode($json, true));
//print_r(json_decode($json));
//print_r(json_decode($json, true));
//print_r("
$arr1=json_decode($json,true);
print_r($arr1);
print_r(array_keys($arr1));
echo array_keys($arr1)[1];
echo array_values($arr1)[2];
while(list($key, $value) = each($arr1))
?>
從同名txt文字中讀取json字串,並轉換成陣列
?php
//header("content-type: text/html; charset=gb2312");
header("content-type: text/html; charset=utf-8");//字元編碼設定
$name = basename(__file__,".php");
$file_path = $name.".txt";
if(file_exists($file_path))
//去掉bom頭
function rmbom($string)
return $string;
}//echo rmbom($str);
$str=rmbom($str);
$str2arr = json_decode($str,true);
print_r($str2arr);
<?php
//php 二維陣列 知道keyvalue 怎麼得到對應的value
function getvaluebykey($arr, $key)
}return '';
}$arr = array('a' => 1, 'b' => 2);
$result = getvaluebykey($arr, 'b');
echo "$result";
?>
使用陣列的過程中經常要遍歷陣列。通常需要遍歷陣列並獲得各個鍵或值(或者同時獲得鍵和值),所以毫不奇怪,php為此提供了一些函式來滿足需求。許多函式能完成兩項任務,不僅能獲取當前指標位置的鍵或值,還能將指標移向下乙個適當的位置。
獲取當前陣列鍵 key()
key()函式返回input_array中當前指標所在位置的鍵。其形式如下:
mixed key(array array)
下面的例子通過迭代處理陣列並移動指標來輸出$fruits陣列的鍵:?
12
3
4
5
6
7
$fruits
=
array
(
=>
"red"
,
"banana"
=>
"yellow"
);
while
(
$key
= key(
$fruits
))
// banana
注意,每次呼叫key()時不會移動指標。為此需要使用next()函式,這個函式的唯一作用就是完成推進指標的任務。
獲取當前陣列值 current()
current()函式返回陣列中當前指標所在位置的陣列值。其形式如下:
mixed current(array array)
下面修改前面的例子,這一次我們要獲取陣列值:?
12
3
4
5
6
7
$fruits
=
array
(
=>
"red"
,
"banana"
=>
"yellow"
);
while
(
$fruit
= current(
$fruits
))
// red
// yellow
獲取當前陣列鍵和值 each()
each()函式返回input_array的當前鍵/值對,並將指標推進乙個位置。其形式如下:
array each(array array)
返回的陣列包含四個鍵,鍵0和key包含鍵名,而鍵1和value包含相應的資料。如果執行each()前指標位於陣列末尾,則返回false。?
12
3
$fruits
=
array
(
,
"banana"
,
"orange"
,
"pear"
);
print_r ( each(
$fruits
) );
each() 經常和 list() 結合使用來遍歷陣列。本例與上例類似,不過迴圈輸出了整個陣列:?
12
3
4
5
6
7
8
9
10
$fruits
=
array
(
,
"banana"
,
"orange"
,
"pear"
);
reset(
$fruits
);
while
(list(
$key
,
$val
) = each(
$fruits
))
// 1 => banana
// 2 => orange
// 3 => pear
因為將乙個陣列賦值給另乙個陣列時會重置原來的陣列指標,因此在上例中如果我們在迴圈內部將 $fruits 賦給了另乙個變數的話將會導致無限迴圈。
這就完成了陣列的遍歷。
PHP獲取陣列的鍵與值方法小結
array keys array 獲取陣列 字典 的所有鍵值,返回乙個鍵值陣列。array values array 獲取陣列的所有value值,飯回乙個陣列。json 註明 value不帶雙引號時,其值只能是數字。注意 大括號兩邊只能是單引號,不能是雙引號 帶雙引號時,可為任意字元。如 print...
PHP獲取陣列的鍵與值方法小結
使用陣列的過程中經常要遍歷陣列。通常需要遍歷陣列並獲得各個鍵或值 或者同時獲得鍵和值 所以毫不奇怪,php為此提供了一些函式來滿足需求。許多函式能完成兩項任務,不僅能獲取當前指標位置的鍵或值,還能將指標移向下乙個適當的位置。獲取當前陣列鍵 key key 函式返回input array中當前指標所在...
PHP如何獲取陣列的鍵與值
使用陣列的過程中經常要遍歷陣列。通常需要遍歷陣列並獲得各個鍵或值 或者同時獲得鍵和值 所以毫不奇怪,php為此提供了一些函式來滿足需求。許多函式能完成兩項任務,不僅能獲取當前指標位置的鍵或值,還能將指標移向下乙個適當的位置。獲取當前陣列鍵 key key 函式返回input array中當前指標所在...