FuelPHP - Pacchetti

I pacchetti sono simili ai moduli nel riutilizzo del codice ma differiscono nei seguenti modi,

  • Non viene mappato agli URL web
  • Non è accessibile tramite richieste HMVC

In breve, i pacchetti non sono funzionalità web dirette come blog, album, ecc. Invece, è una libreria di funzioni raggruppate come l'elaborazione della posta elettronica, la creazione di documenti, la creazione di grafici, l'autenticazione, ecc. Che aiuta a uno sviluppo più veloce del web applicazione.

Creazione di pacchetti

Per creare un pacchetto, prima dobbiamo organizzare il nostro codice sorgente specificato come segue.

/fuel 
   /packages 
      /package (root directory of package) 
         /bootstrap.php 
      /classes 
         /our.php 
      /classes.php 
         /here.php 
      /config 
         /config.php 
         /and_so_on

La struttura del pacchetto ha due file specifici del pacchetto, config.php e file bootstrap.php. Lo scopo del file di configurazione è raggruppare la configurazione del pacchetto nella cartella del pacchetto stesso senza disturbare l'applicazione principale. Lo scopo del file bootstrap è impostare lo spazio dei nomi in modo che il caricatore automatico lo carichi correttamente.

Alcuni modi per impostare lo spazio dei nomi sono i seguenti,

Autoloader::add_namespace('Mypackage', __DIR__.'/classes/'); 
Autoloader::add_core_namespace('Mypackage'); 
Autoloader::add_core_namespace('Mypackage', true); 
Autoloader::add_classes (array( 
   'Mypackage\\Classname' => __DIR__.'/classes/classname.php', 
   'Mypackage\\Anotherclass' => __DIR__.'/classes/anotherclass.php', 
));

Una volta che il file bootstrap è configurato correttamente e i pacchetti sono stati caricati nell'applicazione, possiamo usarlo come segue.

$instance = new Myclass; 
$instance = new Mynamespace\Myclass;

Installazione di pacchetti

I pacchetti sono solitamente posti nella directory fuel / packages. Per impostazione predefinita, vengono installati i seguenti pacchetti,

  • auth - Pacchetto di autenticazione

  • email - Pacchetto e-mail

  • oil - Comando del carburante, pacchetto dell'olio

  • orm - Pacchetto ORM

  • parser - Pacchetto parser Markdown

Per installare un nuovo pacchetto, di seguito sono riportate le due opzioni,

Option 1 - Installazione manuale: download e installazione

Per installare manualmente il pacchetto, scarica prima il pacchetto dal sito Web dell'autore. Disimballalo e posizionalo sottofuel/packages/ cartella.

Option 2 - Metodo automatico tramite comando olio

FuelPHP fornisce un modo automatizzato di installare i pacchetti ospitati in GitHub. Utilizzare il seguente comando per installare il pacchetto, mytestpackage.

php oil package install mytestpackage

Clona il codice sorgente del pacchetto utilizzando git client e lo sposta nella cartella fuel / packages. Se il client git non è disponibile, è possibile utilizzare l'argomento del comando –direct per indicare al comando di scaricare e installare i pacchetti come segue.

php oil package install mytestpackage --direct

Utilizzo di pacchetti

I pacchetti possono essere utilizzati nell'applicazione una volta caricati nell'applicazione. Esistono due modi per caricare i pacchetti nell'applicazione.

Option 1 - Attraverso la classe Package

FuelPHP offre una classe, Package per caricare, scaricare e verificare la disponibilità dei pacchetti rispettivamente tramite i metodi di caricamento, scaricamento e caricamento. loadha due parametri. Il primo parametro,$package è il nome del pacchetto e il secondo parametro, pathè il percorso del pacchetto. Il secondo parametro è facoltativo, se il pacchetto è installato infuel/packages cartella.

// load the orm package 
Package::load('orm');  

// load the parser package from a specific directory 
Package::load('parser', '/path/to/packages/dir/');  

// load the non-existent package 
Package::load('awesome'); // Throws a PackageNotFoundException

Option 2 - Tramite file di configurazione

Per caricare un pacchetto in modo permanente, aggiungi semplicemente il pacchetto in always_load voce di configurazione nel file di configurazione principale, fuel/app/config/config.php. Per caricare il pacchetto di posta elettronica, utilizzare la seguente sintassi.

'always_load' => array ( 
   'packages' => array ( 
      'email', 
   ), 
),

Una volta caricati i pacchetti nell'applicazione, possiamo usarli come segue.

$instance = new Myclass; 
$instance = new Mynamespace\Myclass;