¿Hay el equivalente de un conjunto de Java en php?¿Existe el equivalente de un conjunto de Java en php?
(es decir, una colección que no puede contener el mismo elemento dos veces)
¿Hay el equivalente de un conjunto de Java en php?¿Existe el equivalente de un conjunto de Java en php?
(es decir, una colección que no puede contener el mismo elemento dos veces)
Puede utilizar una matriz y colocar los datos que desee en la clave porque las claves no se pueden duplicar.
SplObjectStorage es lo más parecido.
$storage = new SplObjectStorage;
$obj1 = new StdClass;
$storage->attach($obj1);
$storage->attach($obj1); // not attached
echo $storage->count(); // 1
$obj2 = new StdClass; // different instance
$obj3 = clone($obj2); // different instance
$storage->attach($obj2);
$storage->attach($obj3);
echo $storage->count(); // 3
Como su nombre lo indica, esto sólo es el trabajo con objetos sin embargo. Si desea utilizar esto con tipos escalares, debe usar el nuevo Spl Types como reemplazo, así como el Spl Data Structures y el ArrayObject para reemplazos de Array.
Puede utilizar un array PHP estándar de valores, y pasarlo a través de array_unique función:
$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);
Salidas:
array(2) {
[0] => int(4)
[2] => string(1) "3"
}