當前位置:首頁 » 編程語言 » php二維數組循環

php二維數組循環

發布時間: 2022-07-18 00:29:47

1. php怎樣資料庫行循環生成二維數組並替換其中的值再生成新的二維數組

include('includes/init.php');
$sql="SELECT*,DATE_FORMAT(add_time,'%Y-%m-%d')asadd_dateFROM`donku_articles`";
$query=$mysql->query($sql);
$result=[];
while($row=$mysql->fetch_assoc($query)){//這里應該是關聯的形式,從你的fetch_row我猜是應該是fetch_assoc
$result[]=$row;
}
//下面是賦值給模板
$smarty->assign('art_recommend_row',$result);

2. php中遍歷二維數組的幾種方式

?php
//使用for循環遍歷
$arr2=array(array("張三","20","男"),array("李四","25","男"),array("王五","19","女"),array("趙六","25","女"));
echo"<tableborder=2bordercolor=red><tr><td>姓名</td><td>年齡</td&gt;<td>性別</td></tr>";
for($i=0;$i<4;$i++){
echo"<tr>";
for($j=0;$j<3;$j++){
echo"<td>";
echo$arr2[$i][$j];
echo"</td>";
}
echo"</tr>";
echo"<br>";
}
echo"</table>";
?>
//使用foreach遍歷

<?php
$arr=array('one'=>array('name'=>'張三','age'=>'23','sex'=>'男'),
'two'=>array('name'=>'李四','age'=>'43','sex'=>'女'),
'three'=>array('name'=>'王五','age'=>'32','sex'=>'男'),
'four'=>array('name'=>'趙六','age'=>'12','sex'=>'女'));
foreach($arras$k=>$val){
echo$val['name'].$val['age'].$val['sex']."<br>";
}
echo"<p>";
?>
<?php
$arr=array('one'=>array('name'=>'張三','age'=>'23','sex'=>'男'),
'two'=>array('name'=>'李四','age'=>'43','sex'=>'女'),
'three'=>array('name'=>'王五','age'=>'32','sex'=>'男'),
'four'=>array('name'=>'趙六','age'=>'12','sex'=>'女'));
foreach($arras$key=>$value){
foreach($valueas$key2=>$value2){
echo$value2;
}
echo"<br>";
}
?>

3. php 定義二維數組 並循環箱二維數組賦值 不知道我這樣寫程序對不對 請高人指點

你例子中的代碼我並沒有看出有什麼需要二維數組的地方,兩個一維數組就行了啊。我寫給你看一下

$szx=array();
$szy=array();
$sql="selectx,yfromdata";
$res=mysql_query($sql);
while($row=mysql_fetch_array($res)){
$szx[]=$row['x'];
$szy[]=$row['y'];
}
$arrxjs=json_encode($szx);
$arryjs=json_encode($szy);


至於你的代碼的問題如下

  1. $sql6="select x,y from data ;"; 裡面最好不要有分號, $sql6 = "select x,y from data";就行了

  2. mysql_query($sql6); 你寫成了mysql_query($res6)

  3. $szx[i][] 應該修改為 $szx[$i][];

  4. array_push($szx[$i], '值') 和 $szx[$i][] = '值' 是等價的,因此你連用它們會導致$szx變成三維數組,正確為array_push($szx[$i], $row['x'])或者$szx[$i][] = $row['x'];

  5. $arrxjs和$arryjs只要在while循環外執行一次就行了

  6. for循環沒什麼意義吧,我沒看到你使用$j啊。或者你貼的代碼不全

4. PHP二維數組遍歷問題

$res=array();
$t=array('123332','123333');
foreach($aryas$v){
foreach($tas$m){
$res[$t][]=$v[$m];
}
}
print_r($res);

這樣應該可以滿足你的要求。

一般來說多維數組遍歷的話,多個foreach嵌套使用。

多年以後,重看這個代碼,發現一些問題,重復發一下吧!

$ary=[
['123332'=>123332,'123333'=>123333,],
['123332'=>'HockeyStick','123333'=>'HockeyStick2',],
['123332'=>33.25,'123333'=>33.25,],
['123332'=>10,'123333'=>10,],
['123332'=>33.25,'123333'=>33.25,],
['123332'=>1,'123333'=>1,],
['123332'=>'AAAA6','123333'=>'AAAA6',],
];

$res=[];
$t=['123332','123333',];
foreach($aryas$v){
foreach($tas$m){
$res[$m][]=$v[intval($m)];
}
}
print_r($res);

運行結果:

Array
(
[123332]=>Array
(
[0]=>123332
[1]=>HockeyStick
[2]=>33.25
[3]=>10
[4]=>33.25
[5]=>1
[6]=>AAAA6
)
[123333]=>Array
(
[0]=>123333
[1]=>HockeyStick2
[2]=>33.25
[3]=>10
[4]=>33.25
[5]=>1
[6]=>AAAA6
)
)

5. php循環的二維數組如何排序

$num=$arr[$a]-18按$num排序其實就是按$arr[$a]來排,只需在循環前對$arr排序就行了。出來的結果自然是按 $num排序
<?php
$arr=array(30,15,40,38);

rsort($arr);

for($a=0; $a<4; $a++){
$num=$arr[$a]-18;
if($num>0){
$arr_1=array(array("$arr[$a]","$num"));
$num_1 = array();
foreach ($arr_1 as $arr_2) {
$num_1[] = $arr_2[1];
}
array_multisort( $num_1,SORT_DESC , $arr_1);
print_r($arr_1);
}

}
?>

熱點內容
家用電腦安裝伺服器內存 發布:2025-02-01 14:38:50 瀏覽:255
增量調制編解碼實驗報告 發布:2025-02-01 14:30:30 瀏覽:787
不良人2無敵傷害腳本 發布:2025-02-01 14:23:04 瀏覽:398
地圖flash源碼 發布:2025-02-01 14:13:33 瀏覽:957
家庭影院配置什麼樣的音響 發布:2025-02-01 14:04:33 瀏覽:545
蘋果手機存儲空間不能用怎麼回事 發布:2025-02-01 14:03:04 瀏覽:259
qq易語言盜號源碼 發布:2025-02-01 14:01:25 瀏覽:812
源神比較好的雲伺服器 發布:2025-02-01 13:55:27 瀏覽:208
黑蘋果idea編譯慢 發布:2025-02-01 13:45:30 瀏覽:552
c和linux 發布:2025-02-01 13:39:38 瀏覽:177