phparrayforeach
㈠ php中foreach函數用法
foreach()兩種用:
1:
foreach(array_name
as
$value)
{
statement;
}
array_name要遍歷數組名每循環array_name數組前元素值賦給$value,並且數組內部標向移步循環元素
2:foreach(array_name
as
$key
=>
$value)
{
statement;
}
跟第種區別$key,除前元素值賦給$value外前元素鍵值每循環賦給變數$key鍵值標值字元串比book[0]=10book[id]="001"id.
㈡ PHP中的函數-- foreach()的用法詳解
PHP
4
引入了
foreach
結構,和
Perl
以及其他語言很像。這只是一種遍歷數組簡便方法。foreach
僅能用於數組,當試圖將其用於其它數據類型或者一個未初始化的變數時會產生錯誤。有兩種語法,第二種比較次要但卻是第一種的有用的擴展。
復制代碼
代碼如下:
foreach
(array_expression
as
$value)
statement
foreach
(array_expression
as
$key
=>
$value)
statement
第一種格式遍歷給定的
array_expression
數組。每次循環中,當前單元的值被賦給
$value
並且數組內部的指針向前移一步(因此下一次循環中將會得到下一個單元)。
第二種格式做同樣的事,只除了當前單元的鍵名也會在每次循環中被賦給變數
$key。
自PHP
5
起,還可能遍歷對象。
注意:當
foreach
開始執行時,數組內部的指針會自動指向第一個單元。這意味著不需要在
foreach
循環之前調用
reset()。
注意:除非數組是被引用,foreach
所操作的是指定數組的一個拷貝,而不是該數組本身。foreach對數組指針有些副作用。除非對其重置,在
foreach
循環中或循環後都不要依賴數組指針的值。
自
PHP
5
起,可以很容易地通過在
$value
之前加上
&
來修改數組的元素。此方法將以引用賦值而不是拷貝一個值。
復制代碼
代碼如下:
<?php
$arr
=
array(1,
2,
3,
4);
foreach
($arr
as
&$value)
{
$value
=
$value
*
2;
}
//
$arr
is
now
array(2,
4,
6,
8)
?>
此方法僅在被遍歷的數組可以被引用時才可用(例如是個變數)。
復制代碼
代碼如下:
<?php
foreach
(array(1,
2,
3,
4)
as
&$value)
{
$value
=
$value
*
2;
}
?>
㈢ php array foreach array_unshift 結果求解
array_unshift這個函數是在數組的頭部插入,第一次插入的是1,所以數組的值是1;第二次又在頭部插入,數組變成2,1, 依次類推 最後就是5,4,3,2,1
㈣ php代碼foreach ($res AS $row)什麼意思
php代碼foreach ($res AS $row) 意思是:
每進行一次循環迭代,$res數組元素的值就會被賦值給 $row變數,並且數組指針會逐一地移動,直到到達最後一個數組元素。
例如:
<?php
$colors=array("red","green","blue","yellow");
foreach($colorsas$value){
echo"$value";
}
?>
(4)phparrayforeach擴展閱讀:
PHP中數組是非常實用而且方便的一種數據類型,因為其支持鍵名數組。
foreach語法是專門針對PHP數組進行循環遍歷的語法結構。
foreach($array as $value){//循環數組$array 將每個值賦給$value變數
echo $value; //顯示
}
比如:
$array = array('a','b','c','d');
foreach($array as $value){
echo $value;
}
運行結果是:abcd。也就是逐個輸出數組內的值。
㈤ php foreach數組問題
您好,運行結果沒錯的。是1、200、200,因為您設置的數組下標為數組自身每個元素的值。不知道您是否理解了?
循環您可以用笨方法理解:
// foreach 遍歷開始,只執行了以下兩個步驟:
$array["1"] = 200; // 這里會把字元串「1」變成整型 1,這里意思是設置第二個元素的值為200
$array["2"] = 200; // 同理,這里意思是設置第三個元素的值為200
因此最後結果(那個第一個元素沒有被改變,因此仍然存在):
㈥ php多維數組foreach取值
可以使用count函數來獲取第一維的元素個數
也可以使用count函數的遞歸形式獲取總元素個數
看以下示例:
<?php
$food = array('fruits' => array('orange', 'banana', 'apple'),
'veggie' => array('carrot', 'collard','pea'));
// recursive count
echo count($food, COUNT_RECURSIVE); // output 8
// normal count
echo count($food); // output 2
?>
foreach取出的應該是每個數組元素 你可以使用嵌套的foreach獲取每個元素
看以下示例:
$a = array();
$a[0][0] = "a";
$a[0][1] = "b";
$a[1][0] = "y";
$a[1][1] = "z";
foreach ($a as $v1) {
foreach ($v1 as $v2) {
echo "$v2\n";
}
}
㈦ php foreach 用法
樓主你的問題我也遇到過
這是為什麼呢?
$a
=
array("1"=>"語文","2"=>"數學","3"=>"英語");
上面這個和下面這個是完全一樣的
$a[1]="語文";
$a[2]="數學"
$a[3]=「英語」
樓主我們輸出上面的數組是怎麼輸出的呢?
肯定是echo
$a[1];
對不對?
如果沒有疑問我們繼續!!!!
------------------------------
不知道foreach樓主有沒有完全理解
他的格式是這樣的foreach(數組名
as
下標=>值)
下標也就是上面的$a[1],這里的1就是數組的下標!
到這你應該明白了,為什麼是$a[$key]這樣輸出
你記住不管怎麼變,數組的輸出方法永遠是$a[1],不會是$a['語文']
㈧ PHP語言中 foreach 遍歷數組用法
第一種格式遍歷給定的 $a 數組。每次循環中,當前單元的值被賦給 $b 並且數組內部的指針向前移一步(因此下一次循環中將會得到下一個單元)。
自 PHP 5 起,可以很容易地通過在 $b 之前加上 & 來修改數組的單元。此方法將以引用賦值而不是拷貝一個值。例如:
<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
$value = $value * 2;
}
// $arr is now array(2, 4, 6, 8)
?>
var_mp($arr);#列印$arr看下你就明白了,列印之後你再把&去掉,運行再列印,兩次比較就清楚
第二種就是把原$arr中的每個單元重新賦值,上面那樣寫已經很清楚了,不明白的話,就到網上下載一個php手冊,好好看看
㈨ php中可以用foreach遍歷2個數組嗎
不行,如果兩個數組的個數一樣的話又有對應關系可以使用下面的方法進行同時遍歷
foreach($id as $key=>$sid){
//這里的$key是當前數據在數組中的下標,如果兩個數組有統一的下標,那麼就可以使用
$tmp = $smyz[$key];
//來訪問
}如果下標不統一就沒法做了。