Come sapere che un progetto PHP è utilizzando il framework Zend?
-
23-09-2019 - |
Domanda
Sto scrivendo un pezzo di piccolo software di passare attraverso le cartelle ei file di tutti i progetti php che vengono passati in e rilevare se qualcuno di loro è in realtà anche un progetto Zend. C'è un particolare file che posso subito leggere e dire che il progetto attuale è un progetto Zend? o c'è un modo conveniente per dirlo?
Soluzione
Questa è la struttura di directory di default che ZF crea per voi quando si avvia un progetto. Quindi, se stai solo guardando struttura di directory questo dovrebbe funzionare.
In alternativa si potrebbe guardare per vedere se una directory ha un file nascosto chiamato .zfproject.xml.
Mi auguro che aiuta!
Altri suggerimenti
Non credo che le teste di risposta di cui sopra nella giusta direzione. Per iniziare,
Zend Framework è spesso chiamato un 'Libreria di componenti', perché ha molti componenti accoppiati liberamente che è possibile utilizzare più o meno indipendentemente.
Fonte: Zend Framework MVC & Introduzione
Supponendo che uso standard includerà sia la struttura MVC suggerita e zftool per la creazione del progetto è una cattiva ipotesi perché molti progetti a mano scegliere un sottoinsieme di componenti di Zend per ridurre al minimo l'ora di classe 45MB impronta.
Al contrario, consente di guardare un punto di Thomas accennato nella sua risposta di cui sopra:
Inoltre, la directory di libreria sarà di solito contengono una directory chiamata 'Zend'.
E ora da Guida di riferimento di Zend di programmazione:
Zend Framework standardizza su una classe convenzione di denominazione in base alle quali i nomi di le classi mappa direttamente al le directory in cui sono memorizzati. La directory a livello radice ... è il "Zend /" directory ... Tutto Zend classi del framework sono memorizzati gerarchicamente in queste radice directory ..
I nomi delle classi possono contenere solo caratteri alfanumerici. I numeri sono consentito nei nomi di classe, ma sono scoraggiato nella maggior parte dei casi. sottolineatura sono consentiti solo nel luogo della Separatore di percorso; il nome del file "Zend / Db / Table.php" deve mappare il nome della classe "Zend_Db_Table".
Importante: Il codice che deve essere distribuito al fianco di librerie di Zend Framework, ma non è parte dello standard o extra librerie (ad esempio codice di applicazione o librerie che non sono distribuiti da Zend) non deve mai iniziare con "Zend_" o "ZendX _".
Fonte: Convenzioni di denominazione
Un suggerimento migliore sarebbe quella di verificare la directory radice '/ Zend', tuttavia questo esclude tutti i progetti in cui lo sviluppatore ha deciso di rinunciare ai suggerimenti di cui sopra e ha gettato i file di classe Zend in qualche directory biblioteca globale.
L'ipotesi migliore sarebbe quella di glob ricorsivamente tutti i file nella directory di un progetto di ricerca di nomi di classi che corrispondono alla pseudo spazio dei nomi suggeriti (Zend_ ...).