PHP怎么查询数组中的指定元素

黄舟
黄舟 原创
2023-03-07 11:42:01 2955浏览

array_search()函数在数组中搜索给定的值,找到后返回键值,否则返回 false 。在 PHP 4.2.0之前,函数在失败时返回 null 而不是 false。

语法格式如下

mixed aarray_search(mixed needle,array haystack [,bool strict])

参数 needle 指定在数组中搜索的值;参数 haystack 指定被搜索的数组; 参数 strict 为可选参数,如果值为 true,还将数组中检查给定值的类型。

下面实例综合应用数组函数,实现更新数组中的元素的值,具体示例代码如下:

<?php
header("Content-Type:text/html; charset=utf-8");

$name ="智能机器人@数码相机@天翼 3G 手机@瑞士手表"; //定义字符串
$price = "14998@2588@266@66698";
$counts = "1@2@3@4";
$arrayid = explode("@",$name);                         //将商品 ID的字符串转换到数组中
$arraynum = explode("@",$price);                        //将商品价格的字符串转换到数组中
$arraycount = explode("@",$counts);                      //将商品数量的字符串转换到数组中

if($_POST){
    $id = $_POST["name"];                                //获取要更改的元素名称
    $num = $_POST["counts"];                            //获取要更改的值
    $key = array_search($id,$arrayid);           //在数组中搜索给定的值,如果成功返回键名
    $arraycount[$key]=$num;                      //更改商品数量
    $counts= implode("@",$arraycount);          //更改后的商品数量添加到购物车中
}
?>

<table width="580" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#c17e50">
    <tr>
        <td width="145" class="STYLE1" align="center" bgcolor="#FFFFFF">商品名称</td>
        <td width="145" class="STYLE1" align="center" bgcolor="#FFFFFF">价    格</td>
        <td width="145" class="STYLE1" align="center" bgcolor="#FFFFFF">数    量</td>
        <td width="145" class="STYLE1" align="center" bgcolor="#FFFFFF">金    额</td>
    </tr>
  <?php
  for($i=0;$i<count($arrayid);$i++) {   //for循环读取数组中的数据
      ?>
      <form name="form_<?php echo $i ?>" method="post" action="2.php">
          <tr>
              <td height="25" class="STYLE2" align="center" bgcolor="#FFFFFF"><?php echo $arrayid[$i]; ?></td>
              <td class="STYLE2" align="center" bgcolor="#FFFFFF"><?php echo $arraynum[$i]; ?></td>
              <td class="STYLE2" align="center" bgcolor="#FFFFFF">
                  <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 name="Submit" type="submit" value="更改">
              </td>
              <td class="STYLE2" align="center"><?php echo $arraycount[$i] * $arraynum[$i]; ?></td>

          </tr>
      </form>
  <?php
  }
    ?>
</table>

运行结果为:

1435.png

上面的实例中,综合应用数组函数实现对数组中储存的商品数量进行修改,上图为运行结果!

说明:array_search()函数最常见的应用是购物车,实现对购物车中指定商品数量的修改和删除!

【相关教程推荐】

1. 相关专题推荐:《php数组(Array)



以上就是PHP怎么查询数组中的指定元素的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。