Black log

Etiquetados como ‘hosting php’

Puede que en algún momento de nuestras apasionantes vidas como desarrolladores web nos interese extraer el contenido de cada uno de los elementos de una lista html (<li>,<option> o similares) y almacenarlos en un array para utilizarlos a lo largo de nuestra aplicación.

Me he escrito una función que hace precisamente esto, gracias a la función preg_replace de php.


function li2Array($html,$elemento="li"){

  $a = array("/<".$elemento.">(.*?)</".$elemento.">/is");
  $b = array("$1 <explode>");

  $html  = preg_replace($a, $b, $html);
  $array = explode("<explode>",$html);

  return $array;

}

1 comentario | Archivado como Desarrollo web | 31/12/2009

Cuando desarrollamos con php haciendo uso de la librería curl, para hacer peticiones http post, nos podemos encontrar con el siguiente error al mostrar las cabeceras de respuesta: “HTTP/1.1 417 Expectation Failed Connection: close Content-Length: 0

La solución al problema es enviar el campo Expect (basta con enviarlo vacío) dentro de las cabeceras http de la petición. Lo vemos en el siguiente ejemplo:


$ch = curl_init();

//metemos el campo expect en la cabeceras

curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers = array( "Expect:"));

Comentarios desactivados | Archivado como Desarrollo web |

Algunas aplicaciones, como WordPress necesitan que el Safe Mode (Modo Seguro) no este activo. Esto se puede controlar facilmente desde nuestro panel de control, sin tocar una línea de código.

1) En el panel de control accedemos a Ajustes de alojamiento.

ajustes de alojamiento

2) En el apartado de soporte para PHP, activamos o desactivamos la función php_mode.

safemode

4 comentarios | Archivado como Nuestros servicios, Sistemas TI | 24/12/2009

Para cargar una extensión en tiempo de ejecución en php, tenemos la función dl();

Para cargar por ejemplo la extensión para conectarse a una base de datos mysql haríamos:

if(!extension_loaded("mysql")){
  dl("php_mysql.".PHP_SHLIB_SUFFIX);
}

El valor de la constante PHP_SHLIB_SUFFIX almacena la extensión que tendría una librería dependiendo el sistema operativo en el que corra nuestra aplicación.

Saludos, Asier Marqués

1 comentario | Archivado como Desarrollo web |

Algunas veces disponemos de un array que contiene a su vez varios arrays asociativos, que contienen por ejemplo datos obtenidos tras una consulta a la base de datos.

Puede que dicho array esté cacheado y no queramos atacar a la base de datos para ordenar esos resultados, por lo que nos vendría genial poder ordenar los arrays asociativos que contenga dicho array, en base a los valores que contenga una de las claves de los mismos.

Lo vemos más claro en un ejemplo. Tenemos el siguiente array:


$resultados = array(

array(

      'id' => 1,
      'nombre' => 'Enjuto',
      'apellido' => 'Mojamuto'

     ),

array(

      'id' => 2,
      'nombre'  => 'Marlo',
      'apellido'  => 'Brando'

     )

);

En php disponemos de la función usort(), que ordena en base a una función de comparación que nosotros especifiquemos.

Por ejemplo si quisiéramos ordenar en base a la clave id, en orden descendiente, la función sería:


function comparar($x, $y){

          if ( $x['id'] == $y['id'] )
             return 0;
          else if ( $x['id'] > $y['id'] )
             return -1;
          else
             return 1;

}

Y ahora llamamos a usort para que utilice dicha función:


//si no estamos en un entorno Orientado a Objetos
usort($resultados, array('comparar'));

//si estamos en un entorno Orientado a Objetos
usort($resultados, array('nombreDeClase','comparar'));

12 comentarios | Archivado como Desarrollo web | 23/12/2009

¿Por qué contratar nuestros servicios?

Escrito por admin el 22-12-2009

En Blackslot nos dedicamos a dos cosas: a la gestión de sistemas TI y el desarrollo avanzado de aplicaciones web para nuestros clientes.
Nuestro enfoque consiste en crear soluciones conjuntas o específicamente para cada uno de esas áreas sin salirnos del ámbito de internet.

Gestión de infraestructuras TI

En internet es clave disponer de una óptima infraestructura técnica de sistemas, que no sólo englobe la instalación y configuración del servidor o servidores involucrados en un proyecto. Nuestra apuesta es una gestión de sistemas en la que los profesionales encargados de administrar las infraestructuras de nuestros clientes o nuestras propias soluciones platform as a service, tengan siempre un punto de vista crítico sobre las necesidades reales que pueda tener el proyecto, ofreciendo un know-how junto a las tecnologías de desarrollo más vanguardistas disponibles en éste momento.

Desarrollo avanzado de aplicaciones para internet

Hoy en día, el desarrollo de un proyecto en internet requiere un punto de vista global que abarca más disciplinas que el diseño y desarrollo de una aplicación web. Además de contar con una buena arquitectura de software, que escale adecuadamente y sea fácilmente mantenible, nos enfrentamos con la problemática de conseguirlo haciendo un buen uso de los recursos de los que precisamos, tanto económicos como tecnológicos, tanto a medio como a largo plazo.

En Blackslot desarrollamos bajo plataformas maduras, como .net o php, haciendo uso de herramientas y frameworks como asp.net mvc y symfony que nos permiten desarrollar aplicaciones de una forma ágil, dotadas de una arquitectura sólida, escalable y de gran nivel de calidad.

Además podemos asegurar un gran nivel de estabilidad y fiabilidad tanto a medio como a largo plazo en nuestras aplicaciones, al realizar despliegues sobre nuestra propia infraestructura de sistemas. Este punto es nuestra mayor baza para poder asegurar un servicio completo y de gran calidad, sin importar lo ambicioso que pueda llegar a ser el proyecto.

1 comentario | Archivado como Desarrollo web, Nuestros servicios, Sistemas TI | 22/12/2009

Validar un nombre de dominio en php

Escrito por admin el 22-12-2009

$domain = "blackslot.com";
$expr   = '/^(([a-z0-9]([-a-z0-9]*[a-z0-9]+)?){1,63}.)+[a-z]{2,6}/i';

if(preg_match($expr,strtolower($domain))){
  echo "el dominio es válido";
}else{
  echo "el dominio no es válido";
}

Saludos, Asier Marqués

1 comentario | Archivado como Desarrollo web |

Buscar






Entradas recientes

Comentarios recientes

Categorías

Tag Cloud

Archivos