第八課:PHP數組

第八課:PHP數組



  我們學習的時間還不長,但有的會員已經迫不及待的想要實現很多網站功能,呵呵,有這樣的要求和願望很不錯,這其實就是我們進步的動力。但是,作爲一門編程語言,我們畢竟還是要掌握一些基本的規則,比如數據類型,語法等。好在PHP並不難,這些東西也不多,再學幾課我們就可以開始利用它來實現一個一個網站功能了,到時候相信你會越來越有精神了。好,開始今天的課程。

  今天我們學習數組,數組是一種數據類型,它的使用頻率相當高,學會處理數組會讓你做網站時得心應手。舉個例子:你的網站數據庫裏存有大里的文章,現在你想在一個頁面上顯示20條娛樂新聞的標題,這20條標題從數據庫裏取出來後你想用20個變量表示嗎?我想你不會這麼笨吧,那麼用什麼變量能完全接收這20條數據呢?這就要用到數組變量。

  什麼是數組呢?數組實際上是一個數據集合,相當於是一個數據容器,很多數據存放在裏面,我們可以按一定方法存進去或取出來,還可以對它裏面的數據進行排序等各種操作,還可以檢查裏面有沒有我們想要的數據等等。

  數組的定義:

  可以用 array() 語言結構來新建一個 array(數組)。它接受一定數量用逗號分隔的 key => value 參數對。例如8-1:
<?php
 
$arr = array(1 => "新浪", 2 =>"網易", 3 => "騰訊", "雅虎");
 
?>
 數組裏面的數據實際上是按一定順序排列的,每個數據都有一個key對應,這個key(鍵值)由自己決定,如果你沒有給出key,系統會按序列分配一個鍵值(key)。這裏的 "雅虎"我們沒有給出鍵值,但系統會分配給它一個鍵值4。

  既然系統能自動分配鍵值,可以不可以不寫鍵值呢?當然可以,比如你可以這樣寫8-2:

<?php
 
$arr = array"新浪", "網易", "騰訊", "雅虎");
 
?>
這裏要注意:系統分配鍵值(key)是從0開始的,你知道"新浪"的鍵值是什麼嗎?


  如何訪問數組數據:



  上面那麼多數據我們都用變量$arr表示了,要從中取出我們想要的數據應該怎麼做呢?例如取出8-1例中的數據這麼做8-3:
<?php
 
$arr = array(1 => "新浪", 2 =>"網易", 3 => "騰訊", "雅虎"
);
 
echo $arr[1];  //這個會輸出“新浪”

echo $arr[2];  //這個會輸出“網易”
echo $arr[3];  //這個會輸出“騰訊”
echo $arr[4];  //這個會輸出“雅虎”
 
?>

就是用變量名加上中括號內不同的key訪問不同的數據。中括號內的key我們也叫它下標。要得到8-2中的“新浪”應該怎麼做?對了用$arr[0]。


  用字符串作鍵名:

  上面我們講到的key(鍵值,鍵名)都是整數,PHP中規定,作爲鍵名的只有兩種:整數(integer)和字符串(string),那麼用字符串作鍵名應該怎麼做又如何訪問其值呢?例如8-4:
<?php
 
$arr = array("a" => "新浪", "b"=>"網易", "c" => "騰訊", "雅虎"
);
 
echo $arr['a'];  //這個會輸出“新浪”

echo $arr['b'];  //這個會輸出“網易”
echo $arr['c'];  //這個會輸出“騰訊”
echo $arr[0];  //這個會輸出“雅虎”
 
?>

前面我們講過,定義字符串要用引號,所以訪問數組數據時中括號內的鍵名一定要用引號。

  用方括號的語法新建/修改:

  如果我們要添加一個數據或修改一個數據要怎麼做呢?你可以通過明示地設定值來改變一個現有的數組。這是通過在方括號內指定鍵名來給數組賦值實現的。也可以省略鍵名,在這種情況下給變量名加上一對空的方括號(“[]”)。 如8-5:
<?php
 
$arr = array("a" => "新浪", "b"=>"網易", "c" => "騰訊", "雅虎"
);
 
$arr['a'= "PHP中文社區"
;
$arr['e'= "新浪"
;
$arr[]    = "百度"
;
 
echo $arr['a'];  //這個會輸出“PHP中文社區”

echo $arr['b'];  //這個會輸出“網易”
echo $arr['c'];  //這個會輸出“騰訊”
echo $arr['e'];  //這個會輸出“新浪”
echo $arr[0];  //這個會輸出“雅虎”
echo $arr[1];  //這個會輸出“百度”
 
?>

好了,這課就到這裏,如果你還想了解得更多,可以看PHP手冊或我們的PHP基礎版塊
發佈了7 篇原創文章 · 獲贊 1 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章