2010-08-01 11 views
18

Sono uno sviluppatore PHP intermedio con nessuna esperienza di creazione di un'applicazione web su larga scala in questa lingua (anche se ho in altri, principalmente Rails) ... dire che volevo costruire un sito di social networking usando PHP e MySQL (preferibilmente) con tutti i ritagli web 2.0.Framework PHP per Social Networking

Dove devo iniziare? Che tipo di strutture dovrei guardare? Qualunque libro moderno aggiornato che potrebbe delineare qualcosa del genere? Davvero nulla per costruire una moderna app web in PHP.

+0

* (panoramica) * http://www.phpframeworks.com/ e http://www.php-frameworks.net/ – Gordon

risposta

14

Ryan, esiste un framework php denominato Elgg che è un framework php diretto alle applicazioni basate su social network.

+0

Elgg è fantastico per costruire complessi siti di social networking –

-1

Penso che il punto di partenza è quello di capire veramente i fondamenti di HTTP e il PHP strumenti ti dà per trattare con la sua natura senza stato.

Oltre a questo, vorrei esaminare i modelli.

Infine, tutti i normali schemi di progettazione MVC si applicano allo stesso modo a PHP e ci sono molte implementazioni se si desidera utilizzare qualcosa sullo scaffale. Potresti voler controllare Cake, se hai bisogno di un framework.

+1

PHP stesso è un motore di template, non sono sicuro che Smarty sia davvero una buona combinazione con qualsiasi quadro reale. Approvo Cake. – Kalium

+1

Cake è bloccato nell'era di PHP4. Evitalo e Smarty. – Charles

+0

@Charles, la prossima versione, CakePHP 2.0, sarà puramente PHP5 e molti dei paradigmi che impari con CakePHP 1.3 (versione corrente) si applicheranno in CakePHP 2.0. Inoltre, non si fornisce alcun motivo valido per evitarlo. – mikegreenberg

2

Che tipo di strutture dovrei osservare?

Prova un quadro moderno come Kohana o forse qualcosa di più ingegnerizzato-OO come Zend Framework.

Si potrebbe anche prendere in considerazione un semplice procedural framework invece di un framework OO. PHP funziona molto bene lavorando a bassi livelli.

Evitare la torta. Cerca di essere simile a Rails, ma non solo gli idiomi di Rails si traducono molto male in PHP, Cake è bloccato nell'era del design di PHP4.

+0

Vedi il mio commento che hai fatto sopra. Non sono particolarmente familiare con Ruby, ma sono curioso di sapere quali idiomi Cake tenta di emulare e che dire che è "bloccato in PHP4" lo rende una scelta sbagliata. – mikegreenberg

+0

@ Michael, confronta l'implementazione di CakePHP ActiveRecord con quella di Rails. L'implementazione di CakePHP è orribilmente progettata in confronto a causa delle severe restrizioni imposte da un design dell'era di PHP4. (Non andrà meglio neanche nella versione 2.0, dove la versione minima di PHP diventa 5.2. Per ottenere un'implementazione ActiveRecord più true-to-Rails, è necessario Late Static Binding, una funzionalità 5.3) – Charles

2

People Pods potrebbe essere quello che stai cercando. È un framework PHP costruito pensando ai social network.

7

vi consiglio di dare un'occhiata al Yii Framework. È molto ben progettato ed è stato scritto tenendo conto delle prestazioni. Si sono fortemente concentrati sull'ottimizzazione del loro codice da utilizzare in combinazione con una cache di opcode come APC - nessun altro framework ha mostrato lo stesso livello di performance improvement quando utilizzato con APC. Al di fuori delle prestazioni, il framework offre anche un sacco di supporto integrato per la sicurezza (sessioni sicure con HMAC, prevenzione dell'iniezione SQL, prevenzione XSS, ecc.), moduli, convalida dell'input dell'utente, memorizzazione nella cache, controllo di autenticazione/accesso e integrazione JQuery.

Se sei un programmatore PHP intermedio che non ha esperienza/abbastanza confidenza per costruire il tuo framework, allora Yii è davvero un buon punto di partenza in quanto il codice è molto elegante e il programmatore ha fatto grandi scelte progettuali mentre scrivere il framework - semplicemente leggendo il codice Yii è un ottimo modo per imparare a progettare/scrivere un buon codice PHP.

Solo i miei due centesimi ...

+0

Quadro più decente finora ... – cvsguimaraes

2

realtà sto facendo questo proprio ora attualmente con Zend Framework, e sta lavorando fantasticamente bene .. Zend è seriamente potente e scalabile.

Ho sempre odiato fare tutto il lavoro iniziale di creazione di account di accesso e password di hashing e mettere le cose in atto per gestire SESSIONI, quindi andando avanti con un nuovo lavoro che ho intenzione di verificare una revisione anticipata di questo progetto e semplicemente biforcarsi in qualsiasi altro sito che richiede accessi.

Problemi correlati