Php 如何比较未使用分隔符排列的两个字符串

Php 如何比较未使用分隔符排列的两个字符串,php,string,compare,Php,String,Compare,假设我有: $a = "5,8,0"; $b = "8,0,5"; 如何比较当常规比较失败时,逗号分隔符将始终存在,但元素的顺序(它们是产品的ids,因此它们始终是整数)不必相同(顺序) 您知道如何在PHP中执行此操作吗?将它们拆分为单独的数组,然后比较这两个数组 $a = "5,8,0"; $b = "8,0,5"; $array_a = explode($a, ","); $array_b = explode($b, ","); if (count(array_diff($array_

假设我有:

$a = "5,8,0";
$b = "8,0,5";
如何比较当常规比较失败时,逗号分隔符将始终存在,但元素的顺序(它们是产品的
id
s,因此它们始终是整数)不必相同(顺序)


您知道如何在PHP中执行此操作吗?

将它们拆分为单独的数组,然后比较这两个数组

$a = "5,8,0";
$b = "8,0,5";

$array_a = explode($a, ",");
$array_b = explode($b, ",");

if (count(array_diff($array_a, $array_b))===0)
    echo "The two strings contain the same values.";
else
    echo "The two strings do NOT contain the same values.";

将它们拆分为单独的数组,然后比较这两个数组

$a = "5,8,0";
$b = "8,0,5";

$array_a = explode($a, ",");
$array_b = explode($b, ",");

if (count(array_diff($array_a, $array_b))===0)
    echo "The two strings contain the same values.";
else
    echo "The two strings do NOT contain the same values.";

通过分解将字符串转换为数组,使用数组_intersect的结果确定它们是否相等?


通过explode将字符串转换为数组,使用array_intersect的结果确定它们是否相等?


@Book Of Zeus thx可供编辑,但答案中的任何帮助都会更好。您所说的比较是什么意思?是否要检查它们是否都包含相同的数字?能否澄清最终结果是什么?它将返回true或false,id由javascript连接,然后发送到服务器,因此它们都是整数,所以我想通过比较字符串的内部id来检查它们是否包含相同的产品them@Book请编辑宙斯thx,但答案中的任何帮助都会更好。您所说的比较是什么意思?是否要检查它们是否都包含相同的数字?能否澄清最终结果是什么?它将返回true或false,id由javascript连接,然后发送到服务器,因此它们都是整数,因此,我想通过比较字符串的内部id来检查它们是否包含相同的产品,因此我的问题将变成如何将数组转换为具有定义分隔符的字符串??如果比较,可以节省排序的开销。下面的代码是:
函数($a,$b){$a=explode(',',$a);$b=explode(“,”,$b);sort($a);sort($b);return$a==$b;}
@Qchmqs是您正在寻找的函数。几乎被问及如何重新获取字符串时,我意识到这很愚蠢,因为我不会编辑实际字符串,我只会看看它们是否相等lol;我会接受这个问题,如果是,让我这样做,我会收到一条消息(您可以在4分钟内接受答案)因此我的问题将变成如何将数组转换为具有定义分隔符的字符串??如果您比较它,您可以节省排序的开销。下面是代码:
函数($a,$b){$a=explode(',',$a);$b=explode(',',$b);sort($a);sort($b);return$a==$b;}
@Qchmqs是您正在寻找的函数。几乎有人问我如何重新获取字符串,然后我意识到这很愚蠢,因为我不会编辑实际字符串,我只会看看它们是否相等lol;我会接受这个问题,如果是,让我这样做,我会收到一条消息(您可以在4分钟内接受答案)