加入收藏 | 设为首页 | 会员中心 | 我要投稿 大连站长网 (https://www.0411zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php有序列表或数组中去除指定的值的实现代码

发布时间:2022-06-30 06:44:38 所属栏目:PHP教程 来源:互联网
导读:这篇文章主要介绍了php有序列表或数组中删除指定的值的实现代码,删除给定的值之后,得到一个新的有序列表,长度-1,下面是具体的实现方法。 实现:删除给定的值之后,得到一个新的有序列表,长度-1 代码: ?php /** * Created by PhpStorm. * User: wkk *
  这篇文章主要介绍了php有序列表或数组中删除指定的值的实现代码,删除给定的值之后,得到一个新的有序列表,长度-1,下面是具体的实现方法。
 
  实现:删除给定的值之后,得到一个新的有序列表,长度-1
 
  代码:
 
  <?php
  /**
   * Created by PhpStorm.
   * User: wkk
   * Time: 2021/7/11 - 01:03
   * Desc: <线性表>
   */
  
  namespace php;
  
  class ListArray
  {
      // 从一个线性表中删除给定的值
      public function deleteValue($list, $value)
      {
          // 记录是否找到
          $flag = false;
          // 记录这个$value值的位置
          $pos = 0;
          // 存储删除value之后的线性表
          $newList = [];
  
          if (!$list) {
              $flag = false;
          }
  
          // 查找这个给定的值
          foreach ($list as $k => $item) {
              if ($value === $item) {
                  $flag = true;
                  $pos  = $k;
                  break;
              } else {
                  $flag = false;
              }
          }
  
          // 如果没找到,直接返回原线性表
          if (!$flag) {
              return $list;
          }
  
          // 在被删除的value之前的数据,保留
          for ($j = 0; $j < $pos; $j++) {
              $newList[$j] = $list[$j];
          }
          // var_dump($newList);die;
  
          // 如果找到了,删除这个值,其他的值从这个位置开始 依次往前进一位
          for ($i = $pos; $i < count($list) - 1; $i++) {
              // 往前挪一位
              $newList[$i] = $list[$i + 1];
          }
  
          return $newList;
  
      }
  }
  
  $listObj = new ListArray();
  
  $array = [1, 3, 4, 7, 9, 10, 33];
  $newList = $listObj->deleteValue($array, 1);
  var_dump(json_encode($newList));。
 

(编辑:大连站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!