Categor铆as: [Curso] Redis

08.-Redis manejar conjuntos sunion, sinter y sdiff en 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

<?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

Eugenio Chaparro

Compartir
Publicado por
Eugenio Chaparro

Entradas recientes

馃煝Editar c贸digo de un m贸dulo en Dolibarr [04]

馃煝Editar c贸digo de un m贸dulo en Dolibarr [04]

En este tutorial vamos editar el c贸digo de nuestro m贸dulo personas para poder personalizar algunas…

2 meses hace
馃煝Crear un sub_m贸dulo en Dolibarr [03]

馃煝Crear un sub_m贸dulo en Dolibarr [03]

En este tutorial vamos a crear un sub m贸dulo llamado seguridad que ser谩 muy parecido…

2 meses hace
馃煝Modificar un m贸dulo en Dolibarr [02]

馃煝Modificar un m贸dulo en Dolibarr [02]

En este tutorial aprenderemos a editar el objeto personas del modulo persona que creamos en…

2 meses hace
馃煝Constructor de m贸dulos en Dolibarr

馃煝Constructor de m贸dulos en Dolibarr

Como mencionamos anteriormente Dolibarr es un proyecto realizado sobre la base de una pol铆tica clara:…

2 meses hace
馃煝Tickets en Dolibarr [19]

馃煝Tickets en Dolibarr [19]

Los ticket en dolibarr nos ayudan a comunicar inconveniente en nuestros productos y servicios dentro…

2 meses hace
馃煝Agenda en Dolibarr [18]

馃煝Agenda en Dolibarr [18]

Las agendas en dolibarr nos ayudan a ver las actividades realizadas en proceso y por…

2 meses hace