php 數組相加,看不懂,請些一個好例子給我看一下好嗎

來源:互聯網
上載者:User
$a ="a";$b ="b";$ay[$a][$b][]= 3;print_r($ay);

輸出, Array ( [a] => Array ( [b] => Array ( [0] => 3 ) ) ),意思是不是數組a中存在數組b,數組b中存在一個數組,該數組索引0的時候值是3 。

//////////////////////////////////////
$Me[$a][$b] += $Me[$k][$c]; //請問這個相加之後左邊的值會變成什麼樣??
$Me[$z][$m] = $Me[$sy][$my]; //這個賦值之後會變成怎麼樣??

這兩句,看得我頭很大,請幫忙,最好寫一個例子給我示範一下這兩句,我頭腦真的不太好用。。

我只懂得下面這樣簡單的。。
$a[] =1;
$b[] =2;
echo $a[0] + b[0];結果是3 。
也懂得
$a[] =1;
$b[] =2;
echo $a[0] = b[0]; 結果a[0]是2;


回複討論(解決方案)

$Me[$a][$b] += $Me[$k][$c]; //請問這個相加之後左邊的值會變成什麼樣??
$Me[$z][$m] = $Me[$sy][$my]; //這個賦值之後會變成怎麼樣??


這是二維數組的標記法,表示一個元素的值,你大可以當作一個變數:
$a += 1;
$a = 3;
這樣就能看懂了吧

$Me[$a][$b] += $Me[$k][$c]; //請問這個相加之後左邊的值會變成什麼樣??
這是簡寫,等同
$Me[$a][$b] = $Me[$a][$b]+$Me[$k][$c];
等同
$a=$a+$b;

$Me[$z][$m] = $Me[$sy][$my]; //這個賦值之後會變成怎麼樣??
$Me[$z][$m]和$Me[$sy][$my]都是存放一個值的位置
假如$Me[$z][$m]存放的值為1,$Me[$sy][$my]存放的值為2
那麼 echo $Me[$z][$m] = $Me[$sy][$my];
結果就是 $Me[$z][$m]是2

php array() 是多維陣列,
1維的取值方式是:array[]
2維的取值方式是:array[][]
以此類推。
可以這樣返回數組的維度。

/**  * 返回數組的維度  * @param  [type] $arr [description]  * @return [type]      [description]  */function arrayLevel($arr){     $al = array(0);     function aL($arr,&$al,$level=0){         if(is_array($arr)){             $level++;             $al[] = $level;             foreach($arr as $v){                 aL($v,$al,$level);             }         }     }     aL($arr,$al);     return max($al); } $arr = array(     '0'=>'0', ); echo arrayLevel($arr); 

合并數組建議採用php array內建的函數 array_merge() http://www.w3school.com.cn/php/func_array_merge.asp

多動手,少動眼,記得給腦子加點油

$Me = array(  array(1, 2, 3, 4),  array(4, 6, 7, 8),  array(9, 10, 11, 12),  array(13, 14, 15, 16),);$a = 0;$b = 1;$k = 2;$c = 3;$z = 3;$m = 3;$sy = 1;$my = 2;$Me[$a][$b] += $Me[$k][$c];$Me[$z][$m] = $Me[$sy][$my];print_r($Me);

懂了,謝謝各位牛人

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.