array_unique()
php's 函数处理数字和字符串键,主要在确定唯一性方面不同。 在处理重复值时,它保留了第一个
让我们说明:
array_unique()
array_unique()
混合键:
在带有字符串和数字键的混合物的数组中,相同的原理适用。 Uniqueness is determined by the value, and the first encountered key (whether string or numeric) is retained.$arr1 = ['a' => 1, 'b' => 2, 'c' => 1, 'd' => 3]; $uniqueArr1 = array_unique($arr1); // $uniqueArr1 will be ['a' => 1, 'b' => 2, 'd' => 3] $arr2 = [1 => 1, 2 => 2, 3 => 1, 4 => 3]; $uniqueArr2 = array_unique($arr2); // $uniqueArr2 will be [1 => 1, 2 => 2, 4 => 3] $arr3 = ['a' => 1, 1 => 1, 'b' => 2, 2 => 2]; $uniqueArr3 = array_unique($arr3); // $uniqueArr3 will likely be ['a' => 1, 'b' => 2] (Order might vary slightly depending on PHP version)
Consider these examples:In essence, the key type doesn't directly impact
what key is preserved when duplicates are found. 该函数优先考虑基于密钥顺序的第一次出现。array_unique()
>==
php的array_unique()函数如何比较重复检测的数字和字符串值?
$arr = [1, "1", 2, "2.0"]; $uniqueArr = array_unique($arr); // $uniqueArr will likely be [1, 2]
在检查检查重复值时,进行了宽松的比较(使用
)。这意味着涉及类型的杂耍。 它不会严格比较数据类型;取而代之的是,它在应用PHP的类型强制规则后检查值是否被认为是“等于”的。 如果您不小心,这种松散的比较会导致意外的结果。array_unique()
>
>可以使用哪些策略来确保在PHP中包含混合数据类型(数字和字符串)的数组的准确重复地重复地重复删除?类型:array_unique()
array_unique()
===
array_unique()
$arr1 = ['a' => 1, 'b' => 2, 'c' => 1, 'd' => 3]; $uniqueArr1 = array_unique($arr1); // $uniqueArr1 will be ['a' => 1, 'b' => 2, 'd' => 3] $arr2 = [1 => 1, 2 => 2, 3 => 1, 4 => 3]; $uniqueArr2 = array_unique($arr2); // $uniqueArr2 will be [1 => 1, 2 => 2, 4 => 3] $arr3 = ['a' => 1, 1 => 1, 'b' => 2, 2 => 2]; $uniqueArr3 = array_unique($arr3); // $uniqueArr3 will likely be ['a' => 1, 'b' => 2] (Order might vary slightly depending on PHP version)
以上是PHP数组去重对数字和字符串的比较有何差异的详细内容。更多信息请关注PHP中文网其他相关文章!