Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何交换值?_Php_Sorting_Yii_Swap - Fatal编程技术网

Php 如何交换值?

Php 如何交换值?,php,sorting,yii,swap,Php,Sorting,Yii,Swap,我有部门列表,每个部门都有一个向上的按钮和另一个向下的按钮 当您单击“向上”按钮时,它将调用该函数 Public function actionUP($id, $sort_order){ $allDeps = Department::model()->findAll($criteria); $depArr = array(); foreach ($allDeps as $department){ $temp = array(); $

我有部门列表,每个部门都有一个向上的按钮和另一个向下的按钮

当您单击“向上”按钮时,它将调用该函数

Public function actionUP($id, $sort_order){

    $allDeps = Department::model()->findAll($criteria);
    $depArr = array();
    foreach ($allDeps as $department){
        $temp = array();
        $temp['id'] = $department->id;
        $temp['sort_order'] = $department->sort_order;
        $depArr[] = $temp;
    }
现在,如果我var dump这个数组
depArr
我将得到一个数组

array (size=17)
  0 => 
    array (size=2)
      'id' => string '142' (length=3)
      'sort_order' => string '1' (length=1)
  1 => 
    array (size=2)
      'id' => string '141' (length=3)
      'sort_order' => string '2' (length=1)
  2 => 
    array (size=2)
      'id' => string '144' (length=3)
      'sort_order' => string '5' (length=1)
  3 => 
    array (size=2)
      'id' => string '140' (length=3)
      'sort_order' => string '6' (length=1)
  4 => 
    array (size=2)
      'id' => string '139' (length=3)
      'sort_order' => string '3' (length=1)
  5 => 
    array (size=2)
      'id' => string '143' (length=3)
      'sort_order' => string '4' (length=1)
我有部门列表,位置实际上是
sort\u order
,部门有上下按钮,向上按钮调用
actionUP
,它发送
up?id=143&sort\u order=4

如果用户单击位置4的向上按钮,其位置应更改为3,位于3的部门应转到4,并更新到数据库中

我正在使用yii1.1php框架

流量:

  • 使用搜索
  • 数组搜索('whateverID',数组列($depArr,'id')

  • 现在您有了索引和排序顺序,现在只需要搜索排序顺序-1 数组搜索($depArr[x]['sort\u order']-1,数组列($depArr, "排序);

  • 现在您拥有了两个元素的索引,交换排序顺序或取消设置并再次设置。希望这有帮助
    那么确切的问题是什么呢?第一件事是如何交换值,
    'sort\u order'=>string'4'
    与数组中的
    'sort\u order'=>string'3'
    进行交换。。