我在PHP中有两个字符串要比较。它们具有相同的 caracters(由 - 分隔的大写字母),但排序不同。我的问题是我需要知道$a才能进行查询,并且我只有$b用户生成的人。
$a = 'LC-A-T-P-DPE-ELE'; //saved in bdd
$b = 'T-P-DPE-ELE-LC-A'; //generated by the user
$sql = "SELECT * FROM table WHERE col=$a";
您可以分解两个字符串(使用"-"作为分隔符),对生成的数组进行排序,然后内爆回字符串。类似的东西
$arrayA = explode('-', $a);
$arrayB = explode('-', $b);
sort($arrayA);
sort($arrayB);
$aSorted = implode('-', $arrayA);
$bSorted = implode('-', $arrayB);
之后,如果根据您的定义$a和$b等效,则$aSorted和$bSorted应该是相同的字符串。