亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來(lái)到思海網(wǎng)絡(luò),我們將竭誠(chéng)為您提供優(yōu)質(zhì)的服務(wù)! 誠(chéng)征網(wǎng)絡(luò)推廣 | 網(wǎng)站備案 | 幫助中心 | 軟件下載 | 購(gòu)買流程 | 付款方式 | 聯(lián)系我們 [ 會(huì)員登錄/注冊(cè) ]
促銷推廣
客服中心
業(yè)務(wù)咨詢
有事點(diǎn)擊這里…  531199185
有事點(diǎn)擊這里…  61352289
點(diǎn)擊這里給我發(fā)消息  81721488
有事點(diǎn)擊這里…  376585780
有事點(diǎn)擊這里…  872642803
有事點(diǎn)擊這里…  459248018
有事點(diǎn)擊這里…  61352288
有事點(diǎn)擊這里…  380791050
技術(shù)支持
有事點(diǎn)擊這里…  714236853
有事點(diǎn)擊這里…  719304487
有事點(diǎn)擊這里…  1208894568
有事點(diǎn)擊這里…  61352289
在線客服
有事點(diǎn)擊這里…  531199185
有事點(diǎn)擊這里…  61352288
有事點(diǎn)擊這里…  983054746
有事點(diǎn)擊這里…  893984210
當(dāng)前位置:首頁(yè) >> 技術(shù)文章 >> 文章瀏覽
技術(shù)文章

PHP的10個(gè)關(guān)聯(lián)數(shù)組的技巧

添加時(shí)間:2014-3-14 16:47:13  添加: 思海網(wǎng)絡(luò) 

  在PHP下的關(guān)聯(lián)數(shù)組是描述一組鍵及其關(guān)聯(lián)值時(shí)經(jīng)常使用的一種數(shù)據(jù)類型,可以說(shuō)它是所有編程語(yǔ)言的支柱,當(dāng)然,PHP也不例外,實(shí)際上,關(guān)聯(lián)數(shù)組對(duì)Web開 發(fā)任務(wù)來(lái)說(shuō)是非常重要的,PHP支持多種操作關(guān)聯(lián)數(shù)組的方法,對(duì)開發(fā)人員來(lái)說(shuō),要從中找出最有效,最合適自己所開發(fā)程序的方法來(lái)操縱這些數(shù)組。

  這篇文章將介紹10個(gè)操作PHP關(guān)聯(lián)數(shù)組的技巧,熟練運(yùn)用能幫助你提高開發(fā)效率。

  1、添加數(shù)組元素

  PHP是一種弱類型語(yǔ)言,這意味著你不需要顯示聲明一個(gè)數(shù)組及其大小,相反,你可以同時(shí)聲明并填充數(shù)組。

  $capitals = array(

  'Alabama' => 'Montgomery',

  'Alaska'  => 'Juneau',

  'Arizona' => 'Phoenix'

  );

  額外的數(shù)組元素可以象下面這樣追加:

  $capitals['Arkansas'] = 'Little Rock';

  如果你正在處理數(shù)字索引數(shù)組,你可能想使用顯示命名的函數(shù)前置和追加元素,如array_push()和array_unshift()函數(shù),但這些函數(shù)不能操作關(guān)聯(lián)數(shù)組。

  2、刪除數(shù)組元素

  如果要從數(shù)組中刪除一個(gè)元素,請(qǐng)使用unset()函數(shù),如:

  unset($capitals['California']);

  使用數(shù)字索引數(shù)組時(shí),刪除數(shù)組元素的辦法更多,更靈活,可以使用array_shift()和array_pop()函數(shù)分別從數(shù)組的開頭和末尾刪除一個(gè)元素。

  3、交換鍵和值

  假設(shè)你想創(chuàng)建一個(gè)名叫$states的新數(shù)組,使用州府作為索引,使用州名作為關(guān)聯(lián)值,使用array_flip()函數(shù)很容易完成這個(gè)任務(wù)。

  $capitals = array(

  'Alabama' => 'Montgomery',

  'Alaska'  => 'Juneau',

  'Arizona' => 'Phoenix'

  );

  $states = array_flip($capitals);

  // $states = array(

  //  'Montgomery' => string 'Alabama',

  //  'Juneau'     => string 'Alaska',

  //  'Phoenix'    => string 'Arizona'

  // );

  4、合并數(shù)組

  假設(shè)前面的數(shù)組由一個(gè)基于Web的"FlashCard"服務(wù)使用,你想提供一種方法測(cè)試學(xué)生對(duì)美國(guó)各州首府的掌握情況,你可以使用array_merge()函數(shù)合并包含州和首府的數(shù)組。

  $stateCapitals = array(

  'Alabama' => 'Montgomery',

  'Alaska'  => 'Juneau',

  'Arizona' => 'Phoenix'

  );

  $countryCapitals = array (

  'Australia' => 'Canberra',

  'Austria'   => 'Vienna',

  'Algeria'   => 'Algiers'

  );

  $capitals = array_merge($stateCapitals, $countryCapitals);

  5、編輯數(shù)組值

  假設(shè)在數(shù)組中的數(shù)據(jù)包含大小寫錯(cuò)誤,在插入到數(shù)據(jù)庫(kù)之前,你想糾正這些錯(cuò)誤,你可以使用array_map()函數(shù)給每個(gè)數(shù)組元素應(yīng)用一個(gè)回調(diào)。

  function capitalize($element)

  {

  $element = strtolower($element);

  return ucwords($element);

  }

  $capitals = array(

  'Alabama' => 'montGoMEry',

  'Alaska'  => 'Juneau',

  'Arizona' => 'phoeniX'

  );

  $capitals = array_map("capitalize", $capitals);

  6、按鍵對(duì)數(shù)組排序

  FlashCard程序常常使用各種排序,如按字母順序排序,你可以使用ksort()函數(shù)按鍵對(duì)關(guān)聯(lián)數(shù)組進(jìn)行排序。

  $capitals = array(

  'Arizona' => 'Phoenix',

  'Alaska'  => 'Juneau',

  'Alabama' => 'Montgomery'

  );

  ksort($capitals);

  因?yàn)閿?shù)組是通過(guò)參數(shù)傳遞給ksort()函數(shù)的,意味著你不再需要將排序結(jié)果分配給另一個(gè)變量。

 

  7、隨機(jī)數(shù)組排序

  在FlashCard程序中還涉及到另一種隨機(jī)排序技術(shù),這時(shí)你要使用shuffle()函數(shù)實(shí)現(xiàn)數(shù)組項(xiàng)目的隨機(jī)排序。

  $capitals = array(

  'Arizona' => 'Phoenix',

  'Alaska'  => 'Juneau',

  'Alabama' => 'Montgomery'

  );

  shuffle($capitals);

  如果不需要打亂數(shù)組順序,你只是想隨機(jī)選擇一個(gè)值,那么使用array_rand()函數(shù)即可。

  8、確定鍵和值是否存在

  你可以使用in_array()函數(shù)確定一個(gè)數(shù)組元素是否存在。

  $capitals = array(

  'Arizona' => 'Phoenix',

  'Alaska'  => 'Juneau',

  'Alabama' => 'Montgomery'

  );

  if (in_array("Juneau", $capitals))

  {

  echo "Exists!";

  } else {

  echo "Does not exist!";

  }

  很少有人知道這個(gè)函數(shù)也可以確定一個(gè)數(shù)組鍵是否存在,在這一點(diǎn)上,它和array_key_exists()函數(shù)的功能一樣。

  $capitals = array(

  'Arizona' => 'Phoenix',

  'Alaska'  => 'Juneau',

  'Alabama' => 'Montgomery'

  );

  if (array_key_exists("Alaska", $capitals))

  {

  echo "Key exists!";

  } else {

  echo "Key does not exist!";

  }

  9、搜索數(shù)組

  你可能想搜索數(shù)組資源,這樣用戶就可以方便地用一個(gè)特定的州府檢索關(guān)聯(lián)的州,可以通過(guò)array_search()函數(shù)實(shí)現(xiàn)數(shù)組搜索。

  $capitals = array(

  'Arizona' => 'Phoenix',

  'Alaska'  => 'Juneau',

  'Alabama' => 'Montgomery'

  );

  $state = array_search('Juneau', $capitals);

  // $state = 'Alaska'

  10、標(biāo)準(zhǔn)PHP庫(kù)

  標(biāo)準(zhǔn)PHP庫(kù)(Standard PHP Library,SPL)為開發(fā)人員提供了許多數(shù)據(jù)結(jié)構(gòu),迭代器,接口,異常和其它以前PHP語(yǔ)言沒(méi)有的功能,使用這些功能可以通過(guò)面向?qū)ο蟮恼Z(yǔ)法遍歷數(shù)組。

  $capitals = array(

  'Arizona' => 'Phoenix',

  'Alaska'  => 'Juneau',

  'Alabama' => 'Montgomery'

  );

  $arrayObject = new ArrayObject($capitals);

  foreach ($arrayObject as $state => $capital)

  {

  printf("The capital of %s is %s<br />", $state, $capital);

  }

  // The capital of Arizona is Phoenix

  // The capital of Alaska is Juneau

  // The capital of Alabama is Montgomery

  這僅僅是SPL眾多偉大功能中的一個(gè),需要詳細(xì)學(xué)習(xí)一定要閱讀PHP手冊(cè)了解更多信息。

關(guān)鍵字:PHP、數(shù)組

分享到:

頂部 】 【 關(guān)閉
版權(quán)所有:佛山思海電腦網(wǎng)絡(luò)有限公司 ©1998-2024 All Rights Reserved.
聯(lián)系電話:(0757)22630313、22633833
中華人民共和國(guó)增值電信業(yè)務(wù)經(jīng)營(yíng)許可證: 粵B1.B2-20030321 備案號(hào):粵B2-20030321-1
網(wǎng)站公安備案編號(hào):44060602000007 交互式欄目專項(xiàng)備案編號(hào):200303DD003  
察察 工商 網(wǎng)安 舉報(bào)有獎(jiǎng)  警警  手機(jī)打開網(wǎng)站