php循環賦值數組
Ⅰ php數組循環賦值
$pics=array('1.pic','2.pic');
$num=count($pics);
$newpics=array();
for($i=1;$i<=$num;$i++){
$newpics['p'.$i]=array_combine(array('s','b'),array_fill(0,2,$pics[$i-1]))
}
Ⅱ 如何PHP循環輸入數組
1.PHP基本上就是一種數組語言。時常要進行大量的數組循環操作,主要有兩種方式,
一種是foreach,另一種是while,
代碼如下:
foreach
($array
as
$value)
{
echo
$value;
}
while
(list($key)
=
each($array))
{
echo
$array[$key];
}
foreach
($array
as
$value)
{
echo
$value;
}
while
(list($key)
=
each($array))
{
echo
$array[$key];
}
2.在循環里進行的是數組「寫」操作,則while比foreach快:
foreach
($array
as
$key
=>
$value)
{
echo
$array[$key]
=
$value
.
'...';
}
while
(list($key)
=
each($array))
{
$array[$key]
=
$array[$key]
.
'...';
}
foreach
($array
as
$key
=>
$value)
{
echo
$array[$key]
=
$value
.
'...';
}
while
(list($key)
=
each($array))
{
$array[$key]
=
$array[$key]
.
'...';
}
Ⅲ php 循環里 數組賦值 報錯
下面的語句有錯:
$coord[] = 1;
因為是二維數組,不能賦值1,應該修改為:
$coord[$c] = Array();
賦予一個空數組的值
此外你盯喚這個代碼看謹則棗起來是C的思路,PHP不是這么搞的,這樣寫代碼就失去祥拆了PHP的優勢。
Ⅳ PHP中如何利用foreach循環將一個多維數組賦值到另一個多維數組
PHP 多維數組的賦值與一維數組原理一樣
例如:
<?php
$array = array(array('a','b'),array('c','d'));
$array1 = array(array('a1','b1'),array('c1','d1'));
foreach($array1 as $value){
$array[] = $value;
}
?>
實際上原理是一樣的,多維數組就是復雜一些。
不過,對於多維數組的處理,邏輯思維得更強一些。
Ⅳ php關於數組循環賦值的問題!
下面的語句有錯:
$coord[] = 1;
因為是二維數組,不能賦值1,應該修改為:
$coord[$c] = Array();
賦予一個空數組的值
此外你這個代碼看起來是C的思路,PHP不是這么搞的,這樣寫代碼就失去了PHP的優勢。
Ⅵ 向大家請教,PHP數組循環取值的實現方法。。
for($i=0,$n=count($item);$i<$n;$i++){
foreach ( $item[$i] as $id=>迅或$value ){
畝者伍$map[] = array('itemId'=>嫌嘩$id,'content'=>$value,'ds_dev_opi_id'=>$opiID);
}
}
Ⅶ PHP中使用while循環寫入數組的方法
循環寫入示例如下(其他循環寫入原理也是一樣的):
<?php
//定義空數組
$arr=array();
//循環初始化條件
$i=1;
//根據判斷進行while循環
while($i<=10){
//寫入數組
$arr[]="元素".$i;
//遞增
$i++;
}
print_r($arr);
/*
*Array
(
[0]=>元素1
[1]=>元素2
[2]=>元素3
[3]=>元素4
[4]=>元素5
[5]=>元素6
[6]=>元素7
[7]=>元素8
[8]=>元素9
[9]=>元素10
)*/
?>
Ⅷ php foreach 數組賦值
<?php
//代碼本地已運行過
$arr=array(1,2,2,4);
$uniq_arr
=
array_unique($arr);//第一步先去重,取得最外部需要循環的數組
$i
=
0;
foreach($uniq_arr
as
$key=>$val){//循環去重後的數組
foreach($arr
as
$k=>$v){//循環原生數組
if($key
!=
$k){//判斷兩次的key是否相等,array_unique,去重後的數組key是不變的
if($val
==
$v){
if(is_array($new_arr[$i])){//判斷是否已經是個數組,是就直接追加
array_push($new_arr[$i],$v);
}else{//不是就拼接後再追加
$k_arr
=
array($new_arr[$i]);
array_push($k_arr,$v);
$new_arr[$i]
=
$k_arr;
}
}
}else{//如果key相等直接賦值給新數組
$new_arr[$i]
=
$val;
}
}
$i++;
}
print_r($new_arr);
?>
Ⅸ PHP怎樣用循環將10個數字賦值給一個數組
利用PHP對數組賦值時下標變數會自動遞增的特點,可以很方便用循環將數據存入一個數組。
例如:$arr[] = 'a'; 這條語句會將字元a存入數組變數$arr中,如果$arr不存在則會新建一個;
若已存在,則將$arr數組的下標變數遞增1後存入字元。
也就是說,如果已有$arr[0]='a', 那麼執行 $arr[] = 'b'; 後,數組其實是進行了$arr[1] = 'b' 的操作。
Ⅹ php使用while循環賦值給數組
先問你幾點有關你這個代碼的問題,不然我沒辦法回答,問題都在後面的注釋處
$lp=mysql_query("SELECT * FROM zp where sID=$row[ID]");
//該查詢中$row[ID]怎麼來的,$row[ID]是在後面的循環體中定義的,這里走來就出現不出錯嗎
$lp_num=mysql_num_rows($lp);
while($row = mysql_fetch_array($lp))
{
$lp_xm[]=$row[xm];$lp_birth[]=$row[birth];$lp_dead[]=$row[dead];$lp_ID[]=$row[ID];
$q=0;
$en_num=0;
while($q<$lp_num)
{
$en=mysql_query("SELECT * FROM zp where sID=$lp_ID[$q]");//執行查詢b
$en_num=mysql_num_rows($en)+$en_num;
//上面的值 $en_num應該等於數據行數X(1+2+3+4+5+...+總行數$lp_num),但是這一步是想做什麼呢,不理解
while($row = mysql_fetch_array($en))
{
$en_xm[]=$row[xm];$en_birth[]=$row[birth];$en_dead[]=$row[dead];$en_ID[]=$row[ID];
}
echo "$en_num\n";
//問題中的不是說 輸出$en_xm嗎,怎麼輸出的是$en_num
$q++;
}
}