Excel animados:
http://www.excelunusual.com/
Gráficos libres:
https://kenney.nl/
Texturas:
https://texturehaven.com/textures/
Excel animados:
http://www.excelunusual.com/
Gráficos libres:
https://kenney.nl/
Texturas:
https://texturehaven.com/textures/
Symfony usa como plantillas la librería externa twig.
Dispone de una serie de elementos que nos permiten hacer algo de programación pero toda orientada al diseño. Así, tenemos bucles o estructuras de control, filtros que podemos aplicar a las variables, pero no disponemos de las funciones de php.
Para imprimir una variable usamos {{ … }}
Para una etiqueta de programación usamos {% … %}
Para un comentario usamos {# … #}
Algunos ejemplos:
{% if users %} <ul> {% for user in users %} <li>{{ user.username|e }}</li> {% endfor %} </ul> {% endif %}
{% if temperature > 18 and temperature < 27 %} <p>It's a nice day for a walk in the park.</p> {% endif %}
{% for i in 0..10 %} * {{ i }} {% endfor %}
Hay muchas maneras de indicar las rutas en symfony, pero la más cómoda es usar annotations como hemos hecho en el ejemplo anterior:
/** * @Route("/hola/saludo") */
También podemos recuperar parámetros:
class HolaController { /** * @Route("/hola/saludo/{nombre}") */ public function saludo($nombre) { $texto="Hola $nombre que tal"; return new Response( '<html><body><h1> '.$texto.'</h1></body></html>' ); } }
En nombre podemos usar un valor por defecto:
<strong>public function saludo($nombre='')[/php</strong>] Y podemos usar expresiones regulares para indicar que queremos un tipo concreto de parámetro: [php]</pre> class HolaController { /** * @Route("/hola/saludo/{numero<\d+>}") */ public function saludos($numero=1) { $texto="<h1>Hola que tal</h1>"; $res=""; for($i=0;$i<$numero;$i++){ $res.=$texto; } return new Response( '<html><body>'.$res.'</body></html>' ); } /** * @Route("/hola/saludo/{nombre}") */ public function saludo($nombre='') { $texto="Hola $nombre que tal"; return new Response( '<html><body><h1> '.$texto.'</h1></body></html>' ); } } <pre>
Como vimos en el ejemplo de MVC desde cero, necesitamos una ruta y un controlador. Lo haremos todo junto.
Dentro de src\controller creamos una página llamada HolaController:
<?php // src/Controller/HolaController.php namespace App\Controller; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Annotation\Route; class HolaController { /** * @Route("/hola/saludo") */ public function saludo() { $texto="Hola que tal"; return new Response( '<html><body><h1> '.$texto.'</h1></body></html>' ); } }
Si ahora vamos a la siguiente dirección, deberíamos ver el saludo:
http://localhost:8000/hola/saludo
Otra manera de crear un controlador es desde la consola:
php bin/console make:controller adios
Esto nos crea lo siguiente:
<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\Routing\Annotation\Route; class AdiosController extends AbstractController { /** * @Route("/adios", name="adios") */ public function index() { return $this->render('adios/index.html.twig', [ 'controller_name' => 'AdiosController', ]); } }
Primero, instalar composer:
https://getcomposer.org/download/
Comprobar que tenemos php 7.1 o superior. Si no es así, debemos instalarla. La podemos instalar en otra carpeta.
Nos colocamos en htdocs, abrimos la consola y escribimos lo siguiente:
composer create-project symfony/website-skeleton mi_symfony
Para ejecutar nuestro symfony debemos hacer lo siguiente:
cd mi_symfony
php bin/console server:run
Y lo podremos ver en localhost:8000
¿Qué es el Modelo Vista Controlador? En la wikipedia lo explican muy bien:
https://es.wikipedia.org/wiki/Modelo%E2%80%93vista%E2%80%93controlador
Dos ejemplos para implementar MVC ‘a pelo’:
https://victorroblesweb.es/2013/11/18/tutorial-mvc-en-php-nativo/
Manual oficial php:
http://php.net/manual/es/reference.pcre.pattern.syntax.php
Manuales completos:
https://didesweb.com/tutoriales-php/expresiones-regulares-php/
https://diego.com.es/expresiones-regulares-en-php
http://meudiseny.com/miphp/ejmExpreRegul.php
En esta página podemos probar expresiones regulares y ver si funcionan:
Descargarlo de la web (moodle.org) y descomprimirlo en htdocs
Cambiar la siguiente línea en config.php:
$CFG->dbtype = ‘mariadb’;
Entrar en workbench y aplicar los siguientes cambios en la base de datos moodle:
SET GLOBAL innodb_file_per_table=1;
SET GLOBAL innodb_file_format=Barracuda;
SET GLOBAL innodb_large_prefix=ON;
Cruzar los dedos y rezar a Santa Tecla 🙂
Si queremos verlo en acción podemos entrar en la zona demo:
Qué es git:
https://es.wikipedia.org/wiki/Git
Usar git:
http://rogerdudler.github.io/git-guide/index.es.html
Git en netbeans:
https://netbeans.org/kb/docs/ide/git.html
Repositorios:
https://github.com/
https://bitbucket.org/