{ [0]=> string(9) 1_29 [1]=> string(8) 2_334 [2]=> string(4) 1 [3]=> string(4) 2
[4]=> string(9) 1_30 [5]=> string(8) 5_334 [6]=> string(4) 6 [7]=> string(4) 10 }
用‘-'分开的前面的值在数据里跟没有'-'的值相同就不取这条数据
比如1_29因为数据里有1跟[2]=> string(4) 1相同就不取
最后结果只有有‘-’且没有重复的
{[5]=> string(8) 5_334 }
------解决方案--------------------
输出:
array(8) {
[0]=>
string(4) 1_29
[1]=>
string(5) 2_334
[2]=>
string(1) 1
[3]=>
string(1) 2
[4]=>
string(4) 1_30
[5]=>
string(5) 5_334
[6]=>
string(1) 6
[7]=>
string(2) 10
}
array(1) {
[0]=>
string(5) 5_334
}
------解决方案--------------------
很土的代码,不过结果是你要的.
php code$array = array ('1_29', '2_334', '1', '2', '1_30', '5_334', '6', '10' );$referarray = array ();$fixarray = array ();$myarray = array ();foreach ( $array as $value ) { if (strpos ( $value, '_' ) == false) { $referarray [] = $value; } else { $fixarray [] = substr ( $value, 0, 1 ); $myarray [] = $value; }}$fixarray = array_diff ( $fixarray, $referarray );foreach ( $fixarray as $key => $value ) { echo $myarray [$key];}