我面临着获得价值的小问题。
在我的数据库中,值为48,53,40,我得到的值为48,40,53。我想比较两个值并显示输出。两者的价值相同。只是顺序不同。
谁能帮我????
使用match-against
with boolean mode
并记住在列上放置全文索引以使查询快速。
如-
select * from temp_new where match(b) against('+48 +53 +40' in boolean mode);
我想你把它们放在一个字符串中。
您可以爆炸字符串,然后使用in_array()
:
<?php
$foo = '48,53,40';
$bar = '48,40,53';
function are_equal($foo, $bar, $separator = ','){
$foo = explode($separator, $foo);
$bar = explode($separator, $bar);
foreach($foo as $number){
if(!in_array($number, $bar)){
return FALSE;
}
}
return TRUE;
}
var_dump(are_equal($foo, $bar));
但是,在这种情况下,数据库重新设计当然是健康的!
您应该使用 array_diff 而不是自己发明。