Diferencia entre revisiones de «Supuestos PHP»
Ir a la navegación
Ir a la búsqueda
(Página creada con «= Implementación de patrones = == Singleton == :::<syntaxhighlight lang="php" line enclose="div" highlight="" > <?php class Singleton { private static $instancia =…») |
|||
| Línea 1: | Línea 1: | ||
| − | = Implementación de | + | = Expresións regulares = |
| + | * Código Postal | ||
| + | : ^\d{5}$ | ||
| + | * NIF | ||
| + | : ^\d{8}[TRWAGMYFPDXBNJZSQVHLCKE]$ | ||
| + | * Matrículas (novas) | ||
| + | : ^\d{4}[BCDFGHJKLMNPRSTVWXYZ]{3}$ | ||
| + | * N.º entero positivo | ||
| + | : ^\d+$ | ||
| + | * N.º entero con signo | ||
| + | : ^[+\-]?\d+$ | ||
| + | * Nº real con ata 4 decimais | ||
| + | : ^\d*[\.,]?\d{0,4}$ dejando todo opcional encajaría “” ! | ||
| + | * Nº do día da semana | ||
| + | : ^[1-7]$ | ||
| + | * Nº do mes | ||
| + | : ^([12]?\d)|(3[01])$ | ||
| + | * Hora ^(1?\d)|(2[0-3])$ | ||
| + | * Minutos (ou segundos) | ||
| + | : ^[1-5]?\d$ | ||
| + | * Ficheiro con extensión de imaxe | ||
| + | : .\.(gif|png|jpe?g)$ | ||
| + | * IP | ||
| + | : ^([01]?\d?\d|2[0-4]\d|25[0-5])(\.[01]?\d?\d|2[0-4]\d|25[0-5]){3}$ | ||
| + | * Correo electrónico | ||
| + | : ^.+@.+\.([\da-zA-Z]){2,}$ | ||
| + | |||
| + | = Servizos web = | ||
| + | == Con SOAP == | ||
| + | |||
| + | == Con REST == | ||
| + | |||
| + | = Cesta de la compra = | ||
| + | Aplicación web con con autenticación de usuarios e cesta da compra onde se poden mercar produtos agrupados por categorías. | ||
| + | A información da cesta almacénasa en sesión (pares codProducto / cantidad) | ||
| + | Pódese seleccionar a opción Mercar ó finalizar a compra: insertaranse os rexistros adecuados nas taboas pedidos e lineaspedido. | ||
| + | |||
| + | NOTA: produtos, cesta e mercar están repartidos nos cartafois M (modelos), V(vistas) e no controlador | ||
| + | :::<syntaxhighlight lang="php" line enclose="div" highlight="" > | ||
| + | // index.php login | ||
| + | |||
| + | // agregar.php script que incrementa/decrementa as cantidades dun produto | ||
| + | |||
| + | // eliminar.php elimina un produto da cesta (da sesión) | ||
| + | |||
| + | // mercar.php inserta o pedido na BD | ||
| + | |||
| + | // productos.php selección categoría/productos con posibilidade de enviar unidades á cesta | ||
| + | |||
| + | // cesta.php visualización da cesta con posibilidade de cambiar unidades e eliminar | ||
| + | |||
| + | // autentificación.php se non é un usuario autenticado destrue a sesión e redirixe á pantalla de login | ||
| + | |||
| + | // conexión.php conecta coa BD | ||
| + | |||
| + | // cerrarSesion.php destrue a sesión e volve á pantalla de login | ||
| + | |||
| + | = Implementación de patróns = | ||
== Singleton == | == Singleton == | ||
:::<syntaxhighlight lang="php" line enclose="div" highlight="" > | :::<syntaxhighlight lang="php" line enclose="div" highlight="" > | ||
| Línea 6: | Línea 63: | ||
{ | { | ||
private static $instancia = null; | private static $instancia = null; | ||
| − | // Constructor privado | + | // Constructor privado: non accesible desde fóra e tamén anulamos o constructor por defecto |
private function __construct() {} | private function __construct() {} | ||
| Línea 18: | Línea 75: | ||
} | } | ||
$singleton=Singleton::getInstance(); | $singleton=Singleton::getInstance(); | ||
| − | //$singleton=new Singleton(); daría | + | //$singleton=new Singleton(); daría erro xa que o constructor é privado |
</syntaxhighlight> | </syntaxhighlight> | ||
Revisión del 11:43 10 may 2021
Expresións regulares
- Código Postal
- ^\d{5}$
- NIF
- ^\d{8}[TRWAGMYFPDXBNJZSQVHLCKE]$
- Matrículas (novas)
- ^\d{4}[BCDFGHJKLMNPRSTVWXYZ]{3}$
- N.º entero positivo
- ^\d+$
- N.º entero con signo
- ^[+\-]?\d+$
- Nº real con ata 4 decimais
- ^\d*[\.,]?\d{0,4}$ dejando todo opcional encajaría “” !
- Nº do día da semana
- ^[1-7]$
- Nº do mes
- ^([12]?\d)|(3[01])$
- Hora ^(1?\d)|(2[0-3])$
- Minutos (ou segundos)
- ^[1-5]?\d$
- Ficheiro con extensión de imaxe
- .\.(gif|png|jpe?g)$
- IP
- ^([01]?\d?\d|2[0-4]\d|25[0-5])(\.[01]?\d?\d|2[0-4]\d|25[0-5]){3}$
- Correo electrónico
- ^.+@.+\.([\da-zA-Z]){2,}$
Servizos web
Con SOAP
Con REST
Cesta de la compra
Aplicación web con con autenticación de usuarios e cesta da compra onde se poden mercar produtos agrupados por categorías. A información da cesta almacénasa en sesión (pares codProducto / cantidad) Pódese seleccionar a opción Mercar ó finalizar a compra: insertaranse os rexistros adecuados nas taboas pedidos e lineaspedido.
NOTA: produtos, cesta e mercar están repartidos nos cartafois M (modelos), V(vistas) e no controlador
1 // index.php login 2 3 // agregar.php script que incrementa/decrementa as cantidades dun produto 4 5 // eliminar.php elimina un produto da cesta (da sesión) 6 7 // mercar.php inserta o pedido na BD 8 9 // productos.php selección categoría/productos con posibilidade de enviar unidades á cesta 10 11 // cesta.php visualización da cesta con posibilidade de cambiar unidades e eliminar 12 13 // autentificación.php se non é un usuario autenticado destrue a sesión e redirixe á pantalla de login 14 15 // conexión.php conecta coa BD 16 17 // cerrarSesion.php destrue a sesión e volve á pantalla de login 18 19 = Implementación de patróns = 20 == Singleton == 21 :::<syntaxhighlight lang="php" line enclose="div" highlight="" > 22 <?php 23 class Singleton 24 { 25 private static $instancia = null; 26 // Constructor privado: non accesible desde fóra e tamén anulamos o constructor por defecto 27 private function __construct() {} 28 29 private function __clone() {} // evitamos clonados 30 31 public static function getInstance() { 32 if (is_null(self::$instancia)) 33 self::$instancia = new Singleton(); 34 return self::$instancia; 35 } 36 } 37 $singleton=Singleton::getInstance(); 38 //$singleton=new Singleton(); daría erro xa que o constructor é privado