?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有序列表或數組中刪除指定的值的實現代碼的文章就介紹到這了,更多相關php有序數組刪除內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!