08. Redis manejar conjuntos sunion sinter y sdiff en PHP

08.-Redis manejar conjuntos sunion, sinter y sdiff en PHP?

08. Redis%2Bmanejar%2Bconjuntos%2Bsunion%252C%2Bsinter%2By%2Bsdiff%2Ben%2BPHP

sunion: une 2 o mas conjuntos
sinter: Extra los elementos en comun de 2 conjuntos
sdiff:  Los elementos de un conjunto que no esten en otro

<?php
/*
sunion: une 2 o mas conjuntos
sinter: Extra los elementos en comun de 2 conjuntos
sdiff:  Los elementos de un conjunto que no esten en otro
*/
//Creamos la instancia de redis
$redis = new Redis();
//Nos conectamos a redis
$conn = $redis->connect('127.0.0.1', 6379);
//Si la conexion fue exitosa mostramos este texto
if ($conn) {
    echo "Conexion exitosa: estas conectado a Redis...<br/>";
}
//Si la conexion no fue exitosa mostramos este texto y nos salimos
else {
    echo "No se pudo conectar con la base de datos de Redis :(";
    exit();
}

//Borramos la key (para evitar futuros conflictos)
$redis->del("empleados:desarrollo");
$redis->del("empleados:soporte");

//Agregamos un arreglo de todos los empleados de desarrollo
$redis->sadd("empleados:desarrollo", "empleado1", "empleado2", "empleado3");
//Agregamos un arreglo de todos los empleados de soporte
$redis->sadd("empleados:soporte", "empleado3", "empleado4", "empleado5");

//Unimos todos los empleados
$totalEmpleados = $redis->sunion("empleados:soporte", "empleados:desarrollo");
//Sacamos solo los empleados que esten en soporte y tambien en desarrollo
$comunesEmpleados = $redis->sinter("empleados:soporte", "empleados:desarrollo");
//Empleados exclusivamente de desarrollo
$empleadosSoloDesarrollo = $redis->sdiff("empleados:desarrollo", "empleados:soporte");

//Mostramos los resultados de sunion
echo "</br><strong>Unimos todos los empleados:</strong> " . "<br/>";
foreach ($totalEmpleados as $empleado) {
 echo $empleado . "<br/>";
}

//Mostramos los resultados de sdiff
echo "</br><strong>Sacamos solo los empleados que esten en soporte y tambien en desarrollo:</strong> " . "<br/>";
foreach ($comunesEmpleados as $empleado) {
 echo $empleado . "<br/>";
}

//Mostramos los resultados de sunion
echo "</br><strong>Empleados exclusivamente de desarrollo:</strong> " . "<br/>";
foreach ($empleadosSoloDesarrollo as $empleado) {
 echo $empleado . "<br/>";
}
//Borramos las llaves
$redis->del("empleados:desarrollo");
$redis->del("empleados:soporte");

En mi caso esta es la url donde puedo ver el resultado
http://localhost/redis4/conjuntos.php

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

En Programador Novato vivimos de los anuncios, hemos detectado que está utilizando extensiones para bloquear anuncios. Ayudanos deshabilitando tu bloqueador de anuncios. :)