如何从php数组中删除元素

how to remove elements from a php array

本问题已经有最佳答案,请猛点这里访问。

我得到这个数组作为MySQL查询的结果,然后我需要在条件语句之后从这个数组中删除一些数据。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
 `array(5) { [0]=> array(13)
{
 ["emp_name"]=> string(14)"Yasitha Perera"
 ["emp_applied_date"]=> string(10)"2013 11 27"
 ["emp_applied_time"]=> string(8)"12:12 pm"
 ["hod_apprvd_time"]=> string(0)""
["hr_apprvd_time"]=> string(0)""
["emp_pending_on"]=> string(6)"BR/Hod"
["emp_status"]=> string(0)""
["Br_no"]=> string(3)"001"
["Br_name"]=> string(23)"1st Colombo City Branch"
 ["Contact_no"]=> string(23)"1st Colombo City Branch"
["user_name"]=> string(3)"br1"
["Hd_working_day"]=> string(1)"0"
["Department"]=> string(2)"br"
}
[1]=> array(13) {

 ["emp_name"]=> string(14)"Yasitha Perera"
 ["emp_applied_date"]=> string(10)"2013 11 27"
["emp_applied_time"]=> string(8)"12:12 pm"
 ["hod_apprvd_time"]=> string(0)""
["hr_apprvd_time"]=> string(0)""
["emp_pending_on"]=> string(6)"BR/Hod"
["emp_status"]=> string(0)""
["Br_no"]=> string(3)"002"
["Br_name"]=> string(18)"002-Baththaramulla"
["Contact_no"]=> string(3)"br2"
["user_name"]=> string(3)"br2"
 ["Hd_working_day"]=> string(1)"1"
 ["Department"]=> string(2)"br" }
[2]=> array(13) { ["emp_name"]=> string(12)"emp_rols_abt"
 ["emp_applied_date"]=> string(10)"2013 12 13"
["emp_applied_time"]=> string(8)"01:24 pm"
["hod_apprvd_time"]=> string(8)"12:49 pm"
["hr_apprvd_time"]=> string(8)"04:01 pm"
["emp_pending_on"]=> string(1)"-"
["emp_status"]=> string(0)""
 ["Br_no"]=> string(2)"hr"
["Br_name"]=> string(7)"HR Dep."
["Contact_no"]=> string(2)"hr"
["user_name"]=> string(3)"hr1"
["Hd_working_day"]=> string(1)"1"
["Department"]=> string(2)"hr" }
[3]=> array(13) {

["emp_name"]=> string(7)"my test"
 ["emp_applied_date"]=> string(10)"2013 12 13"
 ["emp_applied_time"]=> string(8)"01:27 pm"
 ["hod_apprvd_time"]=> string(0)""
 ["hr_apprvd_time"]=> string(0)""
["emp_pending_on"]=> string(6)"BR/Hod"
["emp_status"]=> string(0)""
["Br_no"]=> string(4)"icbs"
["Br_name"]=> string(9)"ICBS Dep."
["Contact_no"]=> string(5)"icbs1"
 ["user_name"]=> string(5)"icbs1"
["Hd_working_day"]=> string(1)"1"
["Department"]=> string(4)"icbs" }

[4]=> array(13) { ["emp_name"]=> string(3)"tae"
 ["emp_applied_date"]=> string(10)"2013 12 31"
["emp_applied_time"]=> string(8)"12:42 pm"
["hod_apprvd_time"]=> string(0)""
["hr_apprvd_time"]=> string(0)""
["emp_pending_on"]=> string(6)"BR/Hod"
["emp_status"]=> string(0)""
["Br_no"]=> string(2)"it"
 ["Br_name"]=> string(7)"IT Dep."
["Contact_no"]=> string(3)"it1"
["user_name"]=> string(3)"it1"
["Hd_working_day"]=> string(1)"0"
["Department"]=> string(2)"it" } }

`

我的情况是

1
2
3
4
5
6
7
8
9
10
11
foreach ($data as $row){
      if($row['Department']=='br'){
          if($row['Br_no']!== $row['emp_servicing_bnk']){

              //here i need to remove the things that not acceptable by this condition.
// but i don't know how to remove it from the array.

          }
      }

  }


可以使用unset()函数销毁数组中的特定键:

1
2
3
4
5
foreach ($data as $key => $row) {
    if (/* your condition*/) {
        unset($data[$key]);
    }
}


在PHP中使用unset。类似下面的代码:

1
unset($row['emp_servicing_bnk'])