- PHP從入門到精通(第4版)(軟件開發(fā)視頻大講堂)
- 明日科技
- 291字
- 2020-11-28 17:36:39
7.9 查詢數(shù)組中指定元素
視頻講解:光盤\TM\lx\7\09 查詢數(shù)組中指定元素.mp4
array_search()函數(shù)用于在數(shù)組中搜索給定的值,找到后返回鍵名,否則返回false。在PHP 4.2.0之前,函數(shù)在失敗時(shí)返回null而不是false。
語法格式如下:
mixed array search ( mixed needle, array haystack [, bool strict])
其中,needle指定在數(shù)組中搜索的值;haystack指定被搜索的數(shù)組;strict為可選參數(shù),如果值為true,還將在數(shù)組中檢查給定值的類型。
【例7.12】本例綜合應(yīng)用數(shù)組函數(shù)實(shí)現(xiàn)更新數(shù)組中元素的值,實(shí)例代碼如下:(實(shí)例位置:光盤\TM\sl\7\12)
<?php $name = "智能機(jī)器人@數(shù)碼相機(jī)@天翼3G手機(jī)@瑞士手表"; //定義字符串 $price ="14998@2588@2666@66698"; $counts = "1@2@3@4"; $arrayid=explode("@", $name); //將商品ID的字符串轉(zhuǎn)換到數(shù)組中 $arraynum=explode("@", $price); //將商品價(jià)格的字符串轉(zhuǎn)換到數(shù)組中 $arraycount=explode("@", $counts); //將商品數(shù)量的字符串轉(zhuǎn)換到數(shù)組中 if(isset($_POST['Submit']) && $_POST['Submit']==true){ $id=$_POST['name']; //獲取要更改的元素名稱 $num=$_POST['counts']; //獲取更改的值 $key=array_search($id, $arrayid); //在數(shù)組中搜索給定的值,如果成功則返回鍵名 $arraycount[$key]=$num; //更改商品數(shù)量 $counts=implode("@", $arraycount); //將更改后的商品數(shù)量添加到購(gòu)物車中 } ?> <table width="580" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#c17e50"> <tr> <td width="145"align="center"bgcolor="#FFFFFF" class="STYLE1">商品名稱</td> <td width="145"align="center"bgcolor="#FFFFFF" class="STYLE1">價(jià)格</td> <td width="145"align="center"bgcolor="#FFFFFF" class="STYLE1">數(shù)量</td> <td width="145"align="center"bgcolor="#FFFFFF" class="STYLE1">金額</td> </tr> <?php for($i=0; $i<count($arrayid); $i++){ //for循環(huán)讀取數(shù)組中的數(shù)據(jù) ?> <form name="form1_<?php echo $i; ?>" method="post" action="index.php"> <tr> <td height="25" align="center" bgcolor="#FFFFFF" class="STYLE2"><?php echo $arrayid[$i]; ?></td> <td align="center" bgcolor="#FFFFFF" class="STYLE2"><?php echo $arraynum[$i]; ?></td> <td align="center" bgcolor="#FFFFFF" class="STYLE2"> <input name="counts" type="text" id="counts" value="<?php echo $arraycount[$i]; ?>" size="8"> <input name="name" type="hidden" id="name" value="<?php echo $arrayid[$i]; ?>"> <input type="submit" name="Submit" value="更改"></td> <td align="center" class="STYLE2"><?php echo $arraycount[$i]*$arraynum[$i]; ?></td> </tr> </form> <?php } ?> </table>
在本例中,實(shí)現(xiàn)對(duì)數(shù)組中存儲(chǔ)的商品數(shù)量進(jìn)行修改,其運(yùn)行結(jié)果如圖7.4所示。

圖7.4 更新數(shù)組中元素的值
說明
array_search()函數(shù)最常見的應(yīng)用是購(gòu)物車,實(shí)現(xiàn)對(duì)購(gòu)物車中指定的商品數(shù)量的修改和刪除。
推薦閱讀
- Bootstrap Site Blueprints Volume II
- JavaScript前端開發(fā)模塊化教程
- 編寫高質(zhì)量代碼:改善Python程序的91個(gè)建議
- Building a Quadcopter with Arduino
- 微信小程序開發(fā)解析
- 劍指Java:核心原理與應(yīng)用實(shí)踐
- Microsoft Dynamics AX 2012 R3 Financial Management
- C#程序設(shè)計(jì)教程(第3版)
- Spring MVC+MyBatis開發(fā)從入門到項(xiàng)目實(shí)踐(超值版)
- Java程序設(shè)計(jì)教程
- Android開發(fā)進(jìn)階實(shí)戰(zhàn):拓展與提升
- Learning WebRTC
- 精通Spring MVC 4
- 微軟辦公軟件認(rèn)證考試MOS Access 2013實(shí)訓(xùn)教程
- JavaScript啟示錄