Parliamo del progetto

Categoria

PHP

41 articoli

Sonata Extra Bundle: firewall applicativo

Il SonataExtraBundle fornisce un insieme di funzionalità migliorate per la gestione delle regole del firewall nell'ambiente Sonata Admin. Questo bundle permette agli amministratori di creare e gestire regole per filtrare le richieste in base a diversi criteri come parole vietate, indirizzi IP e agenti utente.

Come creare un trasporto di email personalizzato con Symfony Mailer

Oggi vedremo come creare un trasporto email personalizzato con Symfony Mailer. Per l'esempio, creeremo un trasporto chiamato “pt”. Prerequisiti Prima di iniziare, assicurati di avere installato e configurato Symfony Mailer e HttpClient nel tuo progetto. Puoi aggiungerli al tuo progetto utilizzando i seguenti comandi: composer require symfony/mailer composer require symfony/http-client Creazione della Classe di Trasporto La prima cosa da fare è creare una nuova classe che im...

PHP FFI: creare un binding per QuickJS — parte 5

Per concludere questo mini dossier tecnico sull'interfaccia delle funzioni esterne di PHP, mi sono proposto di connettermi semplicemente a una lib. Una sorta di sfida che potesse al tempo stesso aiutarmi a progredire sull'argomento. Così ho dovuto proporre un'idea di progetto. Qualcosa non troppo piccolo o troppo semplice ma neanche troppo grande. Fallito, ho trovato un'idea ma si è rivelata molto più complessa di quanto immaginassi. Non importa, ho comunque provato. Quindi, per il ...

Symfony : forzare un'entità a utilizzare una connessione al database diversa dalla connessione predefinita

Non è insolito avere più database per un singolo progetto. Normalmente, quando si utilizzano due database, le entità possono essere organizzate in specifiche cartelle che sono dichiarate nella tua configurazione. In questo caso, il sistema utilizzerà la connessione configurata per la directory dell'entità. Puoi vedere un esempio di connessioni multiple qui Symfony 4 / Sonata: gestire un'interfaccia di amministrazione multi-server Supponiamo che vogl...

Usare Composer e bin/console da PhpStorm con Docker

Okay, sei come me. La tua macchina non ha nulla installato localmente. Nemmeno composer né PHP in CLI!Mentre utilizzi PHP e forse anche Symfony (o no), hai bisogno di utilizzare composer quotidianamente. Usi PhpStorm ogni giorno e pensi sia un peccato non beneficiare di tutte le opzioni del tuo IDE, specialmente tutto ciò che riguarda composer e la console di Symfony. Quindi, come fai a configurare PhpStorm per specificare che il composer per il tuo progetto si trova nell'immagine docker?Ecc...

Sonata Admin: aggiungere azioni personalizzate

Seguendo l'articolo scritto da Thomas Bourdin SYMFONY / SONATA: AGGIUNGERE UNA FUNZIONE DI CLONAZIONE A UN CRUD, vi mostreremo come, in modo molto semplice, possiamo aggiungere azioni personalizzate ad un'interfaccia. Sul Dashboard: Ma vedremo anche come personalizzare in modo semplice e generico le azioni personalizzate della lista, l'intestazione del vostro CRUD e infine come aggiungere azioni per l'elaborazione batch. Per il mio esempio, sono partito con una tabella molto semplice ...

Debuggare Symfony in Docker con PhpStorm

Configurazione PHP/Docker Se stai sviluppando con Symfony, installato in un docker compose e non stai ancora utilizzando il debugger, allora quest'articolo è per te. Ti mostreremo come preparare il tuo ambiente così da non dover più usare dd() o var_dump. Una volta provate le gioie del debug, non potrai più farne a meno, poiché migliorerà notevolmente il tuo comfort. Per questo articolo è necessario disporre di un'app Symfony supportata da apache/php (o nginx e fpm, non importa) con un file...

Creare e pubblicare una libreria PHP con Composer

Cos'è Composer? Proprio come NPM è per JavaScript, Composer è lo strumento dedicato per PHP che ti consente di gestire le dipendenze delle librerie per le tue applicazioni. Se hai utilizzato un framework come Symfony, sicuramente lo hai usato. In realtà, ogni sviluppatore PHP lo utilizza quotidianamente. Se sei su questa pagina, probabilmente ti stai chiedendo come creare una libreria facilmente redistribuibile e condivisibile con la comunità. Ecco cosa cercherò di mostrarti. Per il bene del ...

PhpStorm: configurare gli strumenti di qualità in Docker

Ecco una domanda su cui ho riflettuto di recente. Di solito, installo gli strumenti QA direttamente sul mio host o nell'immagine Docker. Se gli strumenti sono installati sul mio host, non ci sono problemi a configurare PhpStorm. Se gli strumenti sono configurati direttamente nell'immagine Docker, non ci sono problemi ad usarli all'interno dell'immagine. Tuttavia, come si può combinare la potenza di PhpStorm e Docker per collegare i due? Allora, ecco come procedere con l'installazione di php_...

Sonata Admin: DataMapper e autowiring

Se hai una necessità specifica di trasformare i dati tra il modulo e la registrazione della tua entità e pensi che questo codice di trasformazione debba essere situato in un servizio perché ha più senso, puoi utilizzare il dataMapper utilizzando l'iniezione delle dipendenze fornita da Symfony. Ma come implementarlo? Un piccolo promemoria riguardo al DataMapper. Se siamo d'accordo con la documentazione ufficiale di Symfony riguardo il DataMapper e DataTransformer, un dataMapper ha la responsab...

SF6 / Sonata 5 : Gestire un'interfaccia OneToMany in un CRUD con CollectionType di Sonata

In questo esempio, prenderemo il caso concreto di una semplice interfaccia che include diversi elementi. Abbiamo scelto di utilizzare una tabella "Progetti" nella quale assegneremo dei documenti. Di conseguenza, per un progetto, possiamo assegnare diversi documenti. E per facilitare l'amministrazione, ci assicureremo di poter gestire la nostra interfaccia nidificata direttamente all'interno della vista di modifica del nostro progetto.Dobbiamo creare lo schem...

PHP FFI: usare una libreria Kotlin Multiplatform — parte 4

Con Stéphane Péchard https://www.linkedin.com/in/stephanepechard/, esperto Android e guru di KMP, ci siamo chiesti se fosse fattibile sviluppare un algoritmo in KMP ed eseguirlo direttamente in PHP. Le specifiche erano semplici: lo sviluppatore Android (Stéphane) mi fornisce un file header, un file .so e io mi occupo del resto. Con il file header, il contratto, dovremmo essere in grado di escogitare qualcosa... Così siamo riusciti a effet...