Tag: php

Build Tree to flat array PHP

Como pasar un array arbol a plano manteniendo el orden y la estructura.Lo unico que aquí no he podido hacerla todo lo generica que podria ser si no que es individual para cada array, ya que hay que indicarle los campos que queremos traspasar.Si alguien tiene la solución que deje un comentario y modifico la Read More

Build Tree Array PHP

Como crear un array árbol, con la siguiente función se crea solo, el array plano tiene que tener lo siguiente. Array => (‘id_hijo’,’nombre_hijo’,’id_padre’) tiene que ser indexado por numero 0,1,2 etc… (FETCH::NUM) Ej.:Array([0] => id_hijo[1] => nombre[2] => id_padre[3] => etc…) La función: function buildTree(array &$elements, $parentId = 0,$level = 0) {       $branch = array();       foreach ($elements as &$element) {         if ($element[2] == $parentId) {           $children = $this->buildTree($elements, $element[0],$level+1);           if ($children) {             $element[‘children’] = $children;           }           $element[‘level’] = $level;           $branch[$element[0]] = $element;           unset($element);         } Read More

Send notification with FCM and PHP

Enviar una notificación desde PHP con FCM (Firebase Cloud Messaging) Tengo una clase que se encarga de enviar los mensajes, no esta muy depurada pero funciona, incluso se podria crear una solo función. <?php class NotifyGoogleFcm {   // https://firebase.google.com/docs/cloud-messaging/http-server-ref   // https://firebase.google.com/docs/cloud-messaging/android/topic-messaging   // https://github.com/fechanique/cordova-plugin-fcm   // https://www.npmjs.com/package/cordova-plugin-fcm-notification   private static $urlFcmGoogle = ‘https://fcm.googleapis.com/fcm/send’;   private static $apiKey = ‘_YOUR_API_KEY_’;   private $header;   private $notify = array();   public $title;   public $body;   public $data = array(); // Si queremos pasar datos a la app, no solo notificarlo   public $color = ‘#22c08a’;   public $sound = ‘default’;   public $icon;   // Se envia a todos los dispositivos, pero si pasamos un unico token se envia solo a ese dispositivo   // Si un usuario se ha subscrito a un topico (/topics/PHP) podemos enviar solo a esas personas   // ej: $this->to = «dtbjlnBC3Os:APA91bEHzYAdwZrCOvrMc5ottIbX6mygHi2N5UKg-_fdzsf63U_Ste»;   public $to = ‘/topics/all’;   // Si queremos enviar a mas de uno el mismo mensaje   // ej:  $this->registration_ids = array(«dtbjlnBC3Os:APA91bEHzYAdwZrCOvrMc5ottIbX6m»,»dfuTx5jdD0w:APA91bFfDkzY0ntMOt-ddORc9DZ_»); Read More

Acceder a / Crear unidad de red desde PHP

Como acceder / crear una unidad de red desde PHP function crear_unidad_red($letter){ $location = «\\\\ip_servidor\\carpeta\\subcarpeta\\etc…»; $user = «nombre_de_usuario»; $pass = «contraseña»; if(!is_dir(«$letter:»)): // Map the drive system(«net use «.$letter.»: \»».$location.»\» «.$pass.» /user:».$user.» /persistent:no «); endif; // Borrar unidad // system(«net use $letter: /delete /y»); } $unidad = ‘Z’; crear_unidad_red($unidad); // The location of the PDF Read More

PHP PDO with Microsoft SQL Server Store Procedure Output

Como ejecutar un store procedure en SQL server con un parámetro de salida. $mysqli->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $outputParam = »; try { $query = «exec store_procedure ?, ?, ?»; $stmt = $mysqli->prepare($query); $stmt->bindValue(1, ‘param 1’, PDO::PARAM_STR); $stmt->bindValue(2, param_int , PDO::PARAM_INT); // Se indica bindParam ya que la asignación a la variable se hace una vez realizado el Read More

Sacar valor de un array multidimensional con PHP

Como sacar de un array multidimensional el valor de un campo. $array_res = array_map(function($details) { return $details[‘nombre_campo’]; }, $array_org); $result_arr = array_column($array, ‘nombre’); //PHP 5.5 Read More

Instalar PHP

Ahora toca instalar PHP, en los posts anteriores he explicado como instalar apache y mysql(mariadb). Como instalar Apache Como instalar MySql(MariaDB) PHP apt-get install php5 Modulos php5-curl -> poder hacer peticiones desde PHP php5-gd o php5-imagick -> librerias para imagenes php5-mcrypt -> encriptar en diferentes formatos php5-mysqlnd -> conectar contra MySql (mysqli) php5-sybase ->  conectar Read More

Instalar MySql (MariaDB)

En la entrada anterior hemos visto como instalar Apache ahora continuamos y instalamos mysql (MariaDB). Como instalar Apache Como instalar PHP MariaDB(MySql) En Debian Jessie el paquete de MariaDB ya viene incluido en los repositorios, pero si lo queremos en otra distribución tenemos que añadir las url al repositorio. En está página explica como hay que Read More

Instalar Apache

Vamos a instalar un servidor web, utilizaremos Apache2, PHP y Mariadb (en lugar de MySql). Como instalar MySql Como instalar PHP Primero empezaremos por instalar apache. Apache apt-get install apache2 Instalar modulos a2enmod modulo (activar el modulo) rewrite -> url amigable headers -> enviar las cabeceras de los archivos expire -> indicar cuando un archivo Read More

Calcular diferencia entre dos fechas

Calcular diferencia entre dos fechas en formato(días/meses/horas,etc…). Si queremos que nos muestre el tiempo en otro formato en el ejemplo de abajo pongo la página de PHP donde lo indica. public function calcularTiempo($date,$date1 = »,$format = ‘%y’){ $datetime1 = new DateTime($date); $datetime2 = empty($date1) ? new DateTime() : new DateTime($date1); $interval = $datetime1->diff($datetime2); return $interval->format($format); Read More