<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                數組在之前我們讓大家記住兩個觀點: 1. 數組可以存入多個不同類型的數據,是一個復合數據類型。 2. 數組的英文是array,學一下最簡單的數組聲明。 那我們來進行簡單的回顧: ~~~ <?php $shu = array(1 , 1.5 , true ,'天王蓋地虎,小雞燉蘑菇'); echo '<pre>'; var_dump($shu); echo '</pre>'; ?> ~~~ 在上例中,我們發現我們存入了: 1. 整型 2. 浮點 3. 布爾 4. 字符串 注:上例中echo pre這個標簽的主要目的是為原樣輸出,格式展示的更好看,更清晰。 我們用var_dump()打印出來顯示看一下效果: ![document/2015-08-24/55db00753ba71](http://box.kancloud.cn/document_2015-08-24_55db00753ba71.png) 我們仔細觀察一下上面的這張圖,你會發現以下幾個特點: 1. array(size = 4) 說明里面有4個元素 2. 0 => int 1 我們知道int是整型的意思,1是一個整型的數值。那前面的0,1,2,3和=>代表什么意思呢? 3. 最新前的0,1,2,3代表的是值的讀取標識號,我們稱之為下標或者鍵(英文:key) 4. => 是一個符號標準叫法叫作:鍵值對應符。因此,以后再看到 0=> int 1 可以這樣來說。 下標訪問符0對應整型的1。 5. 我們還稱數組里面的鍵值對為元素,元素就是鍵值對的組合。 哦耶! 數組好像還挺好學的,全是一些規律喲。 我們通過上例,其實你一不小心的就完成了數組其中的一種聲明方式:索引數組的聲明喲。 所謂索引數組:就是下標全為整型的數組。 ### 索引數組的下標必須要從0開始嗎? 答:這個問題其實不然,索引數組并不一定要從0開始。 那如何能夠不從0開始呢? 答:需要用到大家在上面學的一小塊知識喲。就是鍵值對應符。我們來動手寫寫。 ~~~ <?php $kele = array('只有不斷努力才能博得未來',10 => 'NoAlike', 'PHP學院' , '去PHP學院去PHP', 19 => '鳳姐和芙蓉我都愛' , '楊冪臭腳我最愛'); //打印顯示$kele echo '<pre>'; var_dump($kele); echo '</pre>'; ?> ~~~ 上例中,我們一不小心就寫了一個索引數組。不過索引數組的下標不是從0 開始的,而是從10開始的。 不過上面的例子中,我們覺得寫的不優美,我們可以將代碼寫的更加優美一些,格式更加清晰一些。 ~~~ <?php $kele = array( '只有不斷努力才能博得未來', 10 => 'NoAlike', 'PHP學院' , '去PHP學院去PHP', 19 => '鳳姐和芙蓉我都愛' , '楊冪臭腳我最愛' ); //打印顯示$kele echo '<pre>'; var_dump($kele); echo '</pre>'; ?> ~~~ 這樣是不是看得更清楚,一行對應一個數組的值。 我們執行一下代碼,看一下效果: ![document/2015-08-24/55db03f6c1ec2](http://box.kancloud.cn/document_2015-08-24_55db03f6c1ec2.png) 通過上面的效果,我們來總結規律: 1. 索引數組若不強制聲明他的下標,他的下標是從0開始的。(我們的第一個數組的值:只有不斷努力才能博得未來。這個值的下標為0)。 2. 如果我指定過下標他的下標就為我指定的值。如下標為10和下標為19的,都是我指定過的值。 3. 若某個值(如NoAlike),強制指定了下標(下標為10)。在它后面加上的值(PHP學院),不指定下標的話。他們的下標增長規律為最大值+1。 例如:鳳姐和芙蓉我都愛的下標為19.我在后面加上了:楊冪臭腳我最愛。它的下標自動增長為了11。 不知不覺,你已經學會了索引數組的創建,神奇吧?真為你感到高興! ###向索引數組中增加元素 學習完了索引數組的創建,接下來我們學習索引數組的**增加、修改和刪除**。 ~~~ <?php $minren = array( '楊冪', '王珞丹', '劉亦菲', '黃圣依' ); //如何向這$minren這個數組中增加元素呢 //猜猜范冰冰的下標是多少? $minren[] = '范冰冰'; $minren[100] = '范爺'; //它的下標又為幾呢? $minren[] = '李晨'; ?> ~~~ 總結: 1. 向索引數組中增加元素用: 數組變量名[]、數組變量名[鍵值]這兩種方式來增加元素 2. 鍵值的增長規則與之前的規則一樣。都是最大值加1的原則。 ###向索引數組中刪除元素 我們還拿剛剛的數組來舉例: ~~~ <?php $minren = array( '楊冪', '王珞丹', '劉亦菲', '黃圣依', '范冰冰' ); //假設我不喜歡:黃圣依,如何將黃圣依給刪掉掉呢? //如果刪除掉后范冰冰的下標為多少呢? //如果在后面再追加一個元素,會填掉:“黃圣依”留下來的空嗎? unset($minren[3]); $minren[] = '金星'; echo '<pre>'; var_dump($minren); echo '</pre>'; ?> ~~~ 看看效果: ![document/2015-08-24/55db08d7b2c46](http://box.kancloud.cn/document_2015-08-24_55db08d7b2c46.png) 1. 使用unset刪除變量的方式來刪除數組里面的值。 2. 刪除了中間的值,并不會讓后面的下標向前自動移動。而是原來的值為多少就為多少 3. 刪除掉其中的某個值,新加入的值不會替換掉原來的位置,依然遵循最大值加1的原則。 ### 修改值 我們學習最簡單的創造、增加和刪除。我相信大家一定能夠推理出如何修改值了。 ~~~ <?php $minren = array( '楊冪', '王珞丹', '劉亦菲', '黃圣依', '范冰冰' ); $minren[5] = '范爺'; $minren[2] = '亦菲,不要架給韓國人好嗎?'; echo '<pre>'; var_dump($minren); echo '</pre>'; ?> ~~~ 執行上面的代碼,輸出看看結果。 1.用變量名[鍵] = 新值。就把數組中的值定的值修改了。 ### 索引數組的其他聲明方式 通過上面的例子,我們學習到了數組的聲明。我們來學一下數組的其他聲明方式。 ####一、直接用之前未聲明的變量,用變量名后面接中括號的方式聲明數組。 ~~~ <?php //直接寫一個變量后面加上中括號,聲明變量 $qi[] = '可口可樂'; $qi[10] ='百事'; echo '<pre>'; var_dump($qi); echo '</pre>'; ?> ~~~ ####二、每次用array()寫的太麻煩了,還可以不用寫array喲,更簡單。 ~~~ <?php $minren = [ '楊冪', '王珞丹', 100 => '劉亦菲', '黃圣依', '范冰冰' ]; echo '<pre>'; var_dump($minren); echo '</pre>'; ?> ~~~ 上面是另外兩種PHP學院的寫法。當然,你自己喜歡使用哪一種就使用哪一種來聲明。 ###關聯數組 索引數組適當的變一下形就出現了關聯數組。只要數組里面有一個為字符串的數組,就為關聯數組。 通過上例中,我們發現數組的下標只能夠為字符串,當然不能夠滿足我的需求。 假設我想聲明一個下標為帥對應李文凱這個值。肯定不能滿足我的需求。 那我們來聲明一下關聯數組。跟索引數組的聲明方式完成一樣。不過不同的是,必須要指定字符串的下標和必須要使用鍵值對應符。 ~~~ <?php //聲明一下關聯數組 $rela = array( '帥' => '李文凱', '很帥' => '黃曉明', '灰常灰常帥' => '寧澤濤', '有男人味的大叔' => '吳秀波', ); //再來玩玩簡潔聲明 $drink = [ '美' => '鳳姐', '很美' => '芙蓉姐姐', 'verymei' => '楊冪', '心中滴女神呀' => '華妃', 100 => '孫儷', '娘娘', ]; // 輸出 $rela echo '<pre>'; var_dump($rela); echo '</pre>'; // 輸出$drink echo '<pre>'; var_dump($drink); echo '</pre>'; ?> ~~~ 我們來實驗一下看看最終的結果是什么樣的: ![document/2015-08-24/55db2e311602a](http://box.kancloud.cn/document_2015-08-24_55db2e311602a.png) 我們通過實驗知道: 1. 聲明關聯數組是 鍵名 => 值 2. 在關聯數組可以有索引數組的元素 3. 關聯數組中的索引數組的元素后再聲明了無下標的元素,依然是最大值+1原則。(觀察上圖中的值為孫儷、娘娘的兩個元素)。 ###關聯數組的增、刪、改 ~~~ <?php $drink = [ '美' => '鳳姐', '很美' => '芙蓉姐姐', 'verymei' => '楊冪', '心中滴女神呀' => '華妃', 100 => '孫儷', '娘娘', ]; //追加方式與索引數組是一樣的 $drink['kx'] = '康熙'; //輸出試試 echo '<pre>'; var_dump($drink); echo '</pre>'; //刪除一個試試 unset($drink['verymei']); echo '<pre>'; var_dump($drink); echo '</pre>'; //將芙蓉姐姐 改成:心里美才是真的美 $drink['很美'] = '心里美才是真的美'; echo '<pre>'; var_dump($drink); echo '</pre>'; ?> ~~~ 你動手做做剛剛的實驗,你會發現操作方式與索引的操作方式一樣。只不過下標在讀取的時候讀取的下標PHP學院了。 ####其他的關聯數組聲明方式 ~~~ <?php $drink['nf'] = '農夫山泉'; $cocacola = '可口可樂'; //當然可以是變量喲 $drink['kl'] = $cocacola; $data = array( 'kl' => $cocacola, ); ?> ~~~ 通過上例我們發現,在關聯數組當中也是可以不用array,直接在變量后面接括號。括號里面插入字符串下標,一樣也聲明成功。 后面插入變量的例子,只不過把字符串變成了變量,當然沒有問題。 ###數組當中插入數組 數組可以插入整型、浮點、字符串,那么數組當中可不可以插入數組呢? 當然可以。 在學習數組的時候,我們定義了這樣一組名詞。 1. 一維數組 數組里面沒有其他數組,只有單純的一些變量或者值。 2. 二維數組 數組里面插入了單層的一個數組,或者多個數組 3. 三維數組 在數組(A)里面插入了一個數組(B),在B數組里面又插入了一層級的數組(C),這種我們就稱為三維數組 4. 超過三維的,統統都叫多維數組。 注:索引數組和關聯數組當中都可以再插入其他數組,讓數組變為多維的。 我們來聲明一個一維數組,只有一個維度。索引、關聯均可,這個操作大家都很熟。 ~~~ <?php //一維的索引數組 $data = [1 , 2 , 3 , 4 , 10 => 250]; //一維的關聯數組 $rela = [ 'beijing' => '北京', 'shanghai' => '上海', 'tj' => '天津', ]; ?> echo '<pre>'; var_dump($rela); echo '</pre>'; echo '<pre>'; var_dump($data); echo '</pre>'; ~~~ 一維數組大家很熟悉,也不難,就是聲明數組嘛。二維也不難,只是在數組里面再插一個或多個數組。二維學好了,多維就學好了。 ~~~ <?php $person = array( 'office' => '辦公室', //注意:插入第一個數組喲 'family' => array( '爸爸', '媽媽', 'yeye' => '爺爺', 'nn' => '奶奶', ), //注意:又插入了一個平級的數組 'jiaotong' => array( '自行車', '摩托車', '汽車', '飛機', ), ); echo '<pre>'; var_dump($person); echo '</pre>'; ?> ~~~ 我們執行一下看看效果: ![document/2015-08-24/55db3444dce04](http://box.kancloud.cn/document_2015-08-24_55db3444dce04.png) 我們發現變量person 是一個數組類型。有三個元素(size=3)。 * 第一個元素為 office 對應的是一個字符串“辦公室”, * 第二個元素為family 里面是一個數組,這個數組又有4個元素,值分別為:爸爸、媽媽、爺爺、奶奶。 * 第三個元素為jiaotong,里面也為一個數組有4個元素,值分別為:自行車、摩托車、汽車、飛機。 好了,二維數組好聲明,只要把格式寫對了,確定是在一個數組里面再插入一個數組就好。 那如何訪問:爺爺和爸爸這兩個值呢? ~~~ <?php $person = [ 'office' => '辦公室', //注意:插入第一個數組喲 'family' => [ '爸爸', '媽媽', 'yeye' => '爺爺', 'nn' => '奶奶', ], //注意:又插入了一個平級的數組 'jiaotong' => [ '自行車', '摩托車', '汽車', '飛機', ], ]; //訪問“爸爸”這什值 echo $person['family'][0]; echo '<br />-----華麗麗的分割線------<br />'; //訪問“爺爺”這什值 echo $person['family']['yeye']; echo '<br />-----華麗麗的分割線------<br />'; //訪問“汽車”這什值 echo $person['jiaotong'][2]; ?> ~~~ 我們看看結果如下: ![document/2015-08-24/55db36205b7be](http://box.kancloud.cn/document_2015-08-24_55db36205b7be.png) 上例大家會發現,訪問二維數組不過是按照之前的下標讀取方式依次向下讀取即可。 > 先寫上變量,中括號寫上family這個下標,再寫上要訪問元素的下標。 三維數組我們說了概念,那我們直接上手實驗看看效果: ~~~ <?php $area = array( 'china' => array( '上海', '湖北', '天津', '北京' => array( 'hd' => '海淀', '朝陽', '房山', 'cp' => '昌平', ), '廣東' => array( '深圳', '廣州', '佛山', 'dg' => '東莞', ), ), 'usa' => array( '華盛頓', '舊金山', '紐約' => array( '曼哈頓區', '皇后區', '布魯克林區', ), ), ); echo '<pre>'; var_dump($area); echo '</pre>'; ?> ~~~ 我們執行一下看看效果: ![document/2015-08-24/55db384da1c1c](http://box.kancloud.cn/document_2015-08-24_55db384da1c1c.png) 說明: 在變量$area下有二個數組,一個為china,一個為usa。 在china這個數組里面插入了上海、湖北、天津,又插入了北京和廣東。而北京和廣東又是一個數組。在北京和廣東這兩個數組里面分別有不同的元素。 在這usa 這個數組里面插美國的華盛頓、舊金山和紐約。而紐約下面又是一個數組,說明了紐約下面的幾個區。 所以說,三維數組就是在數組里面再插入一個數組(A),在A數組里面插入一個數組。 我們接下來看看,如何來讀取里面的值。 ~~~ <?php $area = array( 'china' => array( '上海', '湖北', '天津', '北京' => array( 'hd' => '海淀', '朝陽', '房山', 'cp' => '昌平', ), '廣東' => array( '深圳', '廣州', '佛山', 'dg' => '東莞', ), ), 'usa' => array( '華盛頓', '舊金山', '紐約' => array( '曼哈頓區', '皇后區', '布魯克林區', ), ), ); //讀取華盛頓 echo $area['usa']['0']; //讀取:布魯克林 echo $area['usa']['紐約'][2]; //讀取:昌平 echo $area['china']['北京']['cp']; //修改cp下標的值改為:西城區 $area['china']['北京']['cp'] = '西城區'; //輸出看看原來昌平的值是否發生了變化 echo $area['china']['北京']['cp']; ?> ~~~ 通過上面我們發現數組學習起來不難。 * * * * * 學習多維數組的難點: 注意格式,將每個維度的換行、縮進弄整齊。就不容易出錯了。 【切記】 數組元素間的分割符為逗號,在數組中插入數組的時候,不要在結尾處寫成了分號(;) 下圖是錯誤的載圖展示: ![document/2015-08-24/55db3a3175e6c](http://box.kancloud.cn/document_2015-08-24_55db3a3175e6c.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看