本篇内容主要讲解“php有序列表或数组中怎么删除指定的值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php有序列表或数组中怎么删除指定的值”吧!
实现:删除给定的值之后,得到一个新的有序列表,长度-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));
到此,相信大家对“php有序列表或数组中怎么删除指定的值”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。