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
Ave que vuela, a la cazuela.