PHP - Ds Set::intersect() 函式



PHP 的 Ds\Set::intersect() 函式用於透過與另一個集合的值相交來建立一個新的集合。交集指的是兩個集合中的共同值。

此函式使用當前例項和另一個集合共有的值。也就是說,返回當前例項的副本,其中已刪除不在另一個集合中存在的所有值。

下面的表示式清楚地解釋了此函式的工作原理:

A ∩ B = {x : x ∈ A ∧ x ∈ B}

語法

以下是 PHP Ds\Set::intersect() 函式的語法:

public Ds\Set Ds\Set::intersect( Ds\Set $set )

引數

以下是此函式的引數:

  • set − 此引數指定另一個集合。

返回值

此函式返回當前例項與另一個集合的交集。

示例 1

以下是此 PHP Ds\Set::intersect() 函式的基本示例:

<?php
$set1 = new \Ds\Set([1,2,3,4,5,6,7]);
echo "Set1 elements are: \n";
print_r($set1);
$set2 = new \DS\Set([1,2,3,4]);
echo "Set2 elements are: \n";
print_r($set2);
echo "The elements after the intersection: \n";
var_dump($set1->intersect($set2)); 
?>

輸出

上述程式產生以下輸出:

Set1 elements are:
Ds\Set Object
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
    [6] => 7
)
Set2 elements are:
Ds\Set Object
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
)
The elements after the intersection:
object(Ds\Set)#3 (4) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
  [3]=>
  int(4)
}

示例 2

以下是 PHP Ds\Set::intersect() 函式的另一個示例。我們使用此函式建立一個新的集合,該集合與另一個集合 ([84, 85, 86]) 的值相交:

<?php
$set1 = new \Ds\Set([81, 82, 83]);
echo "Set1 elements are: \n";
print_r($set1);
$set2 = new \DS\Set([84, 85, 86]);
echo "Set2 elements are: \n";
print_r($set2);
echo "The elements after the intersection: \n";
var_dump($set1->intersect($set2)); 
?>

輸出

執行上述程式後,它將顯示以下輸出:

Set1 elements are:
Ds\Set Object
(
    [0] => 81
    [1] => 82
    [2] => 83
)
Set2 elements are:
Ds\Set Object
(
    [0] => 84
    [1] => 85
    [2] => 86
)
The elements after the intersection:
object(Ds\Set)#3 (0) {
}

示例 3

在下面的示例中,我們使用 intersect() 函式建立一個新的集合,該集合與另一個集合 (['a', 'b', 'c', 'd']) 的值相交:

<?php
$set1 = new \Ds\Set(['a', 'e', 'i', 'o', 'u']);
echo "Set1 elements are: \n";
print_r($set1);
$set2 = new \Ds\Set(['a', 'b', 'c', 'd']);
echo "Set2 elements are: \n";
print_r($set2);
echo "The elements after the intersection: \n";
var_dump($set1->intersect($set2)); 
?>

輸出

執行上述程式後,它將生成以下輸出:

Set1 elements are:
Ds\Set Object
(
    [0] => a
    [1] => e
    [2] => i
    [3] => o
    [4] => u
)
Set2 elements are:
Ds\Set Object
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
)
The elements after the intersection:
object(Ds\Set)#3 (1) {
  [0]=>
  string(1) "a"
}
php_function_reference.htm
廣告