miércoles, 10 de abril de 2013

Generar un JSON desde PHP

No hay comentarios.:
En este ejemplo vamos a crear un JSON desde PHP.

Para crear una cadena para expresar un objeto con JSON en PHP se dispone de una función llamada json_encode(), que recibe lo que deseamos convertir en notación JSON y devuelve una cadena de texto con el JSON producido.

En el ejemplo nos conectaremos a mysql y extraemos información y la convertiremos en JSON.

<?php
 $link = mysql_pconnect("localhost", "root", "xxx") or die("Unable To Connect");
 mysql_select_db("Northwind") or die("Unable To Connect To Northwind");
 
 $arr = array();
 $rs = mysql_query("SELECT EmployeeID, LastName, FirstName FROM Employees");
 
   while($obj = mysql_fetch_object($rs)) {
         $arr[] = $obj;
   }
 
  header("Content-type: application/json"); 
 
  echo "{"data":" .json_encode($arr). "}";
 ?>


Resultado:
{"data":[{"EmployeeID":"1","LastName":"Davolio","FirstName":"Nancy"},
{"EmployeeID":"2","LastName":"Fullerr","FirstName":"Andrew"},
{"EmployeeID":"3","LastName":"Leverling","FirstName":"Janet"},
{"EmployeeID":"4","LastName":"Peach","FirstName":"Margaret"},
{"EmployeeID":"5","LastName":"Buchanan","FirstName":"Steven"},
{"EmployeeID":"6","LastName":"Suyama","FirstName":"Michael"},
{"EmployeeID":"7","LastName":"King","FirstName":"Robert"},
{"EmployeeID":"8","LastName":"Callahan","FirstName":"Laura"},
{"EmployeeID":"9","LastName":"Dodsworth","FirstName":"Anne"}]}
Ver

domingo, 7 de abril de 2013

bashrc vrs bash_profile

No hay comentarios.:
Cual es la diferencia entre .bashrc y .bash_profile? 






Cuando hacen login en un Sistema Unix, el sistema inicia un programa. Ese programa es un shell, es decir un programa diseñado para empezar otros programas como linea de comando, el shell predeterminado es un Bourne Shell,
lee comandos desde una archivo denominado ~/.profile cuando es invocado desde una session de login.

Todos los shell pueden construir su propio profile, por ejemplo:

bash --> ~/.bash_profile

Cuando el archivo personalizado para cada tipo de shell no existe (~/.bash_profile) lee el archivo predeterminado ~/.profile

Se puede invocar un shell directamente en cualquier momento, por ejemplo, cuando abre un emulador de terminal adentro de un ambiente GUI, si el shell no es una session de login lee un arhivo llamado ~/.bashrc

En otras palabras:

Una session de login: es cuando ingresas su usuario y contraseña en la maquina o remotamente con ssh, aquí se ejecuta: ~/.bash_profile

Una session NO login : es cuando inicias un Linux con modelo grafico(GNOME o KDE) luego abres una terminal se allí  ejecuta: ~/.bashrc


Por lo tanto:


~/.profile
Es el lugar para poner cosas que apliquen a la sesiones completa y definiciones de variables de ambiente.

~/.bash_profile
Puede ser usado en lugar de  ~/.profile, pero necesitara incluir ~/.bashrc si la session es interactiva.

~/.bashrc
Es el lugar para poner cosas que aplican únicamente a sessiones tipo bash.

Recomendacion:

La mayor parte del tiempo no quieres mantener dos archivos separados de configuración para sesiones de login o non-login. Cuando defines tu PATH quieres aplicar las 2, puedes alegrarlo llamando a  ~/.bashrc  dentro de ~/.bash_profile luego incluyes todas las definiciones en   ~/.bashrc

Para hacer esto agrega la siguiente linea en el  ~/.bash_profile


if [ -f ~/.bashrc ]; then
   source ~/.bashrc
fi

Ver