symfony2Iniziare con symfony2


Osservazioni

Questa sezione fornisce una panoramica di ciò che Symfony2 è e perché uno sviluppatore potrebbe volerlo utilizzare.

Dovrebbe anche menzionare qualsiasi argomento di grandi dimensioni all'interno di Symfony2 e collegarsi agli argomenti correlati. Poiché la Documentazione per Symfony2 è nuova, potrebbe essere necessario creare versioni iniziali di tali argomenti correlati.

Versioni

L'ultima versione stabile al momento della scrittura è Symfony 3.1, che verrà mantenuta fino alla fine di luglio 2017.

Symfony ha versioni di supporto a lungo termine che vengono mantenute per un totale di 4 anni (3 anni per correzioni di bug, 1 anno aggiuntivo per correzioni di errori di sicurezza)

Una versione secondaria standard viene mantenuta per un periodo di otto mesi per le correzioni dei bug e per un periodo di quattordici mesi per le correzioni dei problemi di sicurezza.

Versioni a lungo termine del supporto:

Symfony 2.3 - May 2016 end of support for bug fixes
              May 2017 end of support for security fixes(end of life)

Symfony 2.7 - May 2018 end of support for bug fixes
              May 2019 end of support for security fixes(end of life)

Symfony 2.8 - November 2018 end of support for bug fixes
              November 2019 end of support for security fixes(end of life)

A partire dalla versione 3.X, le versioni secondarie saranno limitate a 5 e l'ultima versione secondaria sarà LTS.

Syfmony ha una doppia modalità di manutenzione, rilasciando versioni minori di sei mesi una volta a maggio e una volta a novembre. Le versioni principali vengono rilasciate ogni due anni, il che significa che ci sarà un periodo di tempo di un anno per passare dalla versione principale precedente a quella più recente, dando all'utente una scelta tra le ultime funzionalità della versione standard o una versione LTS supportata per correzioni di bug.

Symfony mantiene una stretta compatibilità con le versioni precedenti, tutto ciò che interrompe BC viene fatto nella prossima versione principale. Un'implementazione di funzionalità che è un miglioramento ma interrompe il BC è mantenuta insieme alla vecchia implementazione che sarà deprecata

Maggiori informazioni su versioni e processo di sviluppo in dettaglio dalla documentazione ufficiale [qui] [1]

[1]: http: //symfony.com/doc/current/contributing/community/releases.html | Versione | Data di rilascio | | ------- | ------------ | | 2.3.0 | 2013-06-03 | | 2.7.0 | 2015-05-30 | | 2.8.0 | 2015-11-30 |

Installazione o configurazione

Symfony Framework - costruito con componenti di symfony, è uno dei principali framework PHP utilizzato per creare siti Web e applicazioni web robusti.

Symfony può essere installato rapidamente attraverso due metodi consigliati.

  1. Il documento ufficiale raccomanda di installare il framework tramite Symfony Installer, una piccola applicazione php installata una volta sul sistema locale che aiuta a scaricare il framework e ad impostare la configurazione del framework. Symfony Installer richiede PHP 5.4 o versioni successive. Per installare su una versione legacy php, utilizzare Composer.
  2. Tramite il compositore di dipendenze PHP

Installazione tramite Symfony Installer

Su Linux / Mac OS X esegui i seguenti comandi:

$ sudo curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony
$ sudo chmod a+x /usr/local/bin/symfony
 

Su Windows, spostati nella directory del progetto ed esegui il seguente comando:

php -r "file_put_contents('symfony', file_get_contents('https://symfony.com/installer'));"
 

il progetto symfony può essere creato eseguendo symfony new my_project [2.8] su Linux / Mac OS X

Su Windows php symfony new my_project [2.8]

o in alternativa symfony new my_project lts utilizzerà l'ultima versione di supporto a lungo termine di Symfony.

Installazione tramite Composer

  • Scarica Composer

  • Usa il comando create-project di Composer per scaricare Symfony

    composer create-project symfony/framework-standard-edition my_project_name ["2.8.*"]
     

Eccellente documentazione ufficiale dettagliata qui

Esecuzione dell'applicazione Symfony

Per avviare il web server interno di symfony (disponibile da PHP 5.4), vai alla directory del progetto ed esegui questo comando:

per symfony <= 2.8

php app/console server:start
 

e per symfony> = 3.0

php bin/console server:start
 

Questo avvia il server web su localhost:8000 in background che serve la tua applicazione Symfony. Quindi apri il tuo browser e accedi a http://localhost:8000/ URL per vedere la pagina di benvenuto di Symfony:

inserisci la descrizione dell'immagine qui

Installazione e configurazione di Symfony

Verifica dei requisiti

Esegui bin/symfony_requirements per verificare i requisiti di symfony e le impostazioni php cli. Installa tutti i pacchetti necessari per eseguire un progetto symfony. Impostazione php.ini per esempio impostazione timezone e short_open_tag. Impostando php.ini per il tuo server web php (es: /etc/php/apache2/php.ini) e php cli (es: /etc/php/cli/php.ini). Aprire http: //localhost/config.php per verificare le impostazioni del server Web php. Se tutto è passato, sei pronto per eseguire il tuo progetto symfony.

Progetto in corso

Esegui l' composer install per installare tutte le dipendenze. Quindi impostare l'autorizzazione per var/cache , var/logs e var/sessions .

Documentazione ufficiale dettagliata qui

Esempio più semplice in Symfony

  1. Installa symfony correttamente come spiegato sopra.
  2. Avvia il server symfony se non sei installato nella directory www.
  3. Accertarsi che http: // localhost: 8000 funzioni se viene utilizzato il server symfony.
  4. Ora è pronto per giocare con l'esempio più semplice.
  5. Aggiungi il seguente codice in un nuovo file /src/AppBundle/Controller/MyController.php nella directory di installazione di symfony.
  6. Prova l'esempio visitando http: // localhost: 8000 / hello
    (Se non si utilizza il server http di Symfony, visitare http: // localhost / (symfony-dir) /web/app_dev.php/hello)
  7. È tutto. Successivo: usa il ramoscello per rendere la risposta.
<?php
// src/AppBundle/Controller/MyController.php

namespace AppBundle\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;

class MyController
{
    /**
     * @Route("/hello")
     */
    public function myHelloAction()
    {
        return new Response(
            '<html><body>
                   I\'m the response for request <b>/hello</b>
             </body></html>'
        );
    }
}
 

NOTA: tutte le classi di controller dovrebbero avere una terminazione con la parola " Controller " ei metodi relativi ai routing dovrebbero terminare con la parola " Azione ". Inoltre, in quale controller le azioni sono posizionate non è rilevante fino a quando non si definisce un prefisso di rotta per il controller.