BUENAS PRACTICAS PHP

Posted: martes, 12 de noviembre de 2013 by Skuarch in Etiquetas: ,
0


1 ) echo es más rápido que print.

2 ) Envuelve tus strings en comillas simples (‘) en lugar de comillas dobles (“) ya que es más rápido, debido a que PHP busca variables dentro de “…” y no en ‘…’. Utiliza esto cuando no estés usando variables dentro del string.

3 ) Usa sprintf en lugar de variables contenidas en comillas dobles, es como 10 veces más rápido.

4 ) Utiliza múltiples parametros (o apilados) con echo en lugar de concatenar strings.

5 ) Usa precálculos, fija el valor máximo para los bucles for antes y no en el bucle. En este ejemplo…: for ($x=0; $x < count($array); $x)
…se llama a la función count() cada vez. En su lugar, utiliza $max=count($array) antes de que empiece el bucle for.

6 ) “Desdefine” (unset) o pon a null las variables para liberar memoria, especialmente los arrays grandes.

7 ) Evita las funciones mágicas como __get, __set o __autoload.

8 ) Utiliza require() en lugar de require_once() cuando sea posible.

9 ) Utiliza rutas completas en includes y requires, se invierte menos tiempo resolviendo las rutas del Sistema Operativo.

10 ) require() e include() son completamente idénticos, excepto que require() paraliza la aplicación si no encuentra el fichero. En cuanto a rendimiento, hay muy poca diferencia.

ACCESO REMOTA A MYSQL

Posted: martes, 17 de septiembre de 2013 by Skuarch in Etiquetas: , ,
0


Para poder entrar a mysql desde cualquier computadora como root tenemos que seguir estos pasos.

1.- entrar a la base de datos podria ser de esta forma
mysql -uroot -p
2.- usar la base de datos mysql
use mysql 
3.- borrar los usuarios que no tengan nada
delete from user where user='';
4.- actualizar los host con un "%"  a los usuario que tengan localhost
update user set host='%' where host='localhost';
5.- actualizamos el password al usuario root
update user set password=PASSWORD('myPassword') where user='root';
6.- reiniciamos los privilegios
flush privileges;
7.- editar el archivo que esta en /etc/mysql/my.cnf con tu editor favorito y buscar la linea bind-address            = 127.0.0.1 y cambiarel 127.0.0.1 por 0.0.0.0

[opcional]
Poner el password con la encriptacion anterior de mysql, algunos clientes de mysql siguen usando la encriptacion antigua de mysql
update user set password=old_password('myPassword') where user='root';
y despues reiniciar los privilegios
flush privileges;

Un nivel bajo de seguridad es cambiar el puerto de mysql que por default es el 3306, como abrimos el acceso al usuario root desde cualquier maquina es recomendable hacer esto pero solo es un nivel basico de seguridad.

Para cambiar el puerto de mysql solo se edita el archivo my.cnf que esta en /etc/mysql y se cambia la linea port = 3306 por el puerto que quieras.

INSTALAR JAVA EN UBUNTU

Posted: martes, 2 de abril de 2013 by Skuarch in Etiquetas: , ,
0




Con estos simples pasos se instala java sin que tengas que agregar algun repositorio.

1.- Descargar el tar.gz de la pagina de oracle
2.- Yo lo voy a descomprimir en /usr/lib/jvm/ (tienes que crear la carpeta de jvm) o lo puedes descomprimir donde quieras
3.- ejecuta el siguiente comando update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_17/bin/java" 1
4.- cambia el comando a la ruta que tengas y el jdk que descargaste
5.- fin

REGLAS PARA RESPONSIVE WEB DESIGN

Posted: sábado, 8 de diciembre de 2012 by Skuarch in Etiquetas: , , ,
0



Quien no este aprendiendo a hacer aplicaciones para dispositivos moviles esta perdiendo terreno, una forma de hacer aplicaciones para moviles es html5 y usar responsive web design, aqui te dejo algunos de los puntos mas importantes que debes de considerar a la hora de usar este tipo de diseño

1.- no usar medidas en pixeles (perfect pixel)
2.- usar la etiqueta meta viewport
3.- no usar float:left ni float right (opcional)
4.- usar porcentajes y em's (unidades relativas)
5.- hacer una interfaz ligera por que hay dispositivos con poco procesamiento
6.- usar imagenes adaptables
7.- usar media querys
8.- usar las nuevas etiquetas de html5 (opcional)
9.- emplear maximos y minimos en el css
10.- tener objetos flexibles

en dispositivos moviles debes de considerar hacer botones grandes para que los dedos puedan dar click, se debe de tener encuenta las librerias, entre menos librerias mandes a llamar es mejor


INSTALAR APACHE 2.4 Y PHP 5.4 EN UBUNTU

Posted: lunes, 22 de octubre de 2012 by Skuarch in Etiquetas: , , , ,
0


En ocaciones usar apt-get no tiene los programas actualizados, para eso se realizo este pequeño tutorial

Requisitos:
apache: httpd-2.4.x.tar.gz
php: php-5.4.x.tar
tener instalado mysql 5 (este si se instalo con apt-get)
opcionalmente puedes usar git para clonar un repositorio, si no tienes git instalado puedes ir a la pagina web de git y descargarlo el proyecto como zip.

Paso 1:
instalar todas la librerias para para poder compilar
sudo apt-get build-dep apache2 php5
sudo apt-get install libtool

Paso 2 (instalar apache) :
cd /usr/local/src
clonar este repositiorio (tambien puedes obtenerlo como zip desde la pagina de github)
git clone https://github.com/apache/apr.git srclib/apr
./buildconf --force
./configure -enable-modules=all --with-included-apr --enable-mpm=worker --enable-suexec --enable-rewrite
sudo make
sudo make install
editar el archivo /usr/local/apache2/conf/httpd.conf con tu editor favorito y cambiar las siguientes lineas
#User ya existe se tiene que editar
User www-data
Group www-data
#ServerAdmin  ya existe se tiene que editar
ServerAdmin root@localhost.localdomain
#DocumentRoot ya existe se tiene que editar
DocumentRoot "/var/www"
#Directory se ya existe tiene que editar
dentro de el bloque de Directory porner lo siguiente
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
por favor checa los comentarios

en el mismo archivo cambiar los siguiente
ServerName localhost:80
crea la carpeta www en var para poner los sitios web
sudo mkdir /var/www
le damos todos los permisos para que posteriormente no de probremas
sudo chmod 777 -R /var/www
chown -Rf www-data:www-data /var/www
link dinamico para que apache ejecute binarios
ln -s /usr/local/apache2/bin/* /usr/local/bin/
remover /etc/init.d/apache2 y remplazarlo con un link simboloco a /usr/local/bin/apachectl:

rm -rf /etc/init.d/apache2
ln -s /usr/local/bin/apachectl /etc/init.d/apache2 
para que apache inicia automaticamente
update-rc.d -f apache2 defaults 91 09


Paso 3 (instalar php) :

mover el archivo comprimido a /usr/local/src y descomprimirlo
cd usr/local/src
sudo tar -xvf php5.x.x
hay que darle permisos
sudo chmod 777 -R php5
usamos este comando
./buildconf --force 
para instalar php primero se tiene que configurar
./configure -enable-bcmath --enable-calendar --enable-dba --enable-exif --enable-ftp --enable-mbstring --enable-shmop --enable-sigchild --enable-soap --enable-sockets --enable-sysvmsg --enable-wddx --enable-zip --with-apxs2=/usr/local/apache2/bin/apxs --with-bz2 --with-config-file-path=/usr/local/apache2/conf --with-curl --with-gd --with-gettext --with-mcrypt --with-mysql --with-mysqli --with-openssl --with-pdo-mysql --with-pdo-pgsql --with-zlib
si tienes problemas en esta parte checa que tengas todas las librerias instaladas
sudo apt-get install libxml2-dev libpcre3-dev libbz2-dev libcurl4-openssl-dev libdb5.1-dev libjpeg-dev libpng12-dev libxpm-dev libfreetype6-dev libmysqlclient-dev postgresql-server-dev-9.1 libt1-dev libgd2-xpm-dev libgmp-dev libsasl2-dev libmhash-dev unixodbc-dev freetds-dev libpspell-dev libsnmp-dev libtidy-dev libxslt1-dev libmcrypt-dev
lo instalamos
make
sudo make install
copiamos el php.ini a /usr/local/apache2/conf/
sudo cp php.ini-development /usr/local/apache2/conf/php.ini
 creamos un archivo que contenga lo necesario para apache use php
sudo touch /usr/local/apache2/conf/extra/httpd-php5.conf
y tendra el siguiente contenido

#
# This next section will call PHP for .php, .phtml, and .phps files
#
AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php-source .phps
#
# This is the directory containing php.ini
#
PHPIniDir "/usr/local/apache2/conf"
al archivo /usr/local/apache2/conf/httpd.conf agregarle esta linea en la seccion de modulos
LoadModule php5_module modules/libphp5.so
en ese mismo archivo buscar DirectoryIndex y modificarlo asi
DirectoryIndex index.html index.php
copiar las librerias que estan en la carpeta de php5/libs a /usr/local/apache2/modules/

cp /usr/local/php.x.x/libs/* /usr/local/apache2/modules/
con esto tendremos instalado nuetro servidor y listo para trabajar