91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

php中array_intersect使用無效怎么解決

PHP
小億
99
2024-01-24 23:14:57
欄目: 編程語言

如果使用array_intersect()函數時無效,可能有以下幾個原因:

  1. 數組中的值是字符串,但是存儲的是數字形式。這種情況下,您可以使用array_map()函數將字符串轉換為數字。
$array1 = ['1', '2', '3'];
$array2 = [2, 3, 4];

$array1 = array_map('intval', $array1);

$result = array_intersect($array1, $array2);
print_r($result);
  1. 數組中的值是對象,但是對象的比較是通過引用,而不是值。如果想比較對象的屬性值,可以通過自定義一個匿名函數來實現。
class Item {
    private $id;

    public function __construct($id) {
        $this->id = $id;
    }

    public function getId() {
        return $this->id;
    }
}

$item1 = new Item(1);
$item2 = new Item(2);
$item3 = new Item(3);

$array1 = [$item1, $item2];
$array2 = [$item2, $item3];

$result = array_intersect($array1, $array2);
print_r($result); // []

$result = array_uintersect($array1, $array2, function($a, $b) {
    return $a->getId() <=> $b->getId();
});
print_r($result); // [$item2]

請確保比較的數據類型是一致的,并且按照您的需求使用適當的比較函數。

0
进贤县| 澳门| 永昌县| 乐亭县| 抚顺市| 聂拉木县| 柘城县| 鸡东县| 定结县| 芜湖县| 军事| 桐城市| 大理市| 汽车| 黑河市| 梁山县| 三穗县| 黄平县| 宜宾市| 安塞县| 会泽县| 昌吉市| 岫岩| 门源| 双牌县| 安庆市| 涿州市| 柯坪县| 娄底市| 滦平县| 英吉沙县| 益阳市| 金阳县| 乳山市| 中超| 墨脱县| 鹿邑县| 淳安县| 金溪县| 昌平区| 和平县|