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

php – 按数值向上/向下移动数组中的项目

发布时间:2020-12-13 22:19:57 所属栏目:PHP教程 来源:网络整理
导读:我无法找到一个有效的解决方案,通过移动-1或1来重新排列/交换数组项目的值.如果用户想要通过向上或向下移动值来移动订单,我会在表格上下订单,数组应向上或向下交换所需项的值,例如: 如果用户想要向上移动商品订单: $desired_item_to_move = 'banana';$defa
我无法找到一个有效的解决方案,通过移动-1或1来重新排列/交换数组项目的值.如果用户想要通过向上或向下移动值来移动订单,我会在表格上下订单,数组应向上或向下交换所需项的值,例如:

如果用户想要向上移动商品订单:

$desired_item_to_move = 'banana';

$default_order = array('orange','apple','banana','pineapple','strawberry');

// Typically it should return this:

array('orange','strawberry');

你可以看到香蕉和苹果已被交换,由于香蕉向上移动,如果用户想要将其向下移动,它应该将菠萝交换为香蕉(来自第一个阵列),依此类推.

我查看了函数,array_replace最接近,但它只替换了数组.

解决方法

向上移动(假设您已检查该项目不是第一个):

$item = $array[ $index ];
$array[ $index ] = $array[ $index - 1 ];
$array[ $index - 1 ] = $item;

向下移动:

$item = $array[ $index ];
$array[ $index ] = $array[ $index + 1 ];
$array[ $index + 1 ] = $item;

(编辑:李大同)

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

    推荐文章
      热点阅读