2010-08-01 70 views
18

Ich bin ein intermediärer PHP-Entwickler ohne Erfahrung beim Erstellen einer großen Web-Anwendung in dieser Sprache (obwohl ich in anderen, hauptsächlich Rails) habe ... sagen, ich wollte eine Social-Networking-Website mit PHP und MYSQL (vorzugsweise) mit allen Web 2.0-Zutaten.PHP-Framework für Social Networking

Wo soll ich anfangen? Welche Art von Rahmen sollte ich betrachten? Irgendwelche modernen Bücher, die so etwas skizzieren würden? Wirklich alles für den Aufbau einer modernen Web-App in PHP.

+0

* (Überblick) * http://www.phpframeworks.com/ und http://www.php-frameworks.net/ – Gordon

Antwort

14

Ryan, gibt es ein PHP-Framework namens Elgg, die ein PHP-Framework für soziale Netzwerke basierte Anwendungen gerichtet ist.

+0

Elgg ist großartig für Aufbau komplexer Social-Networking-Websites –

-1

Ich denke, der Ort zu starten ist es, die Grundlagen von HTTP, um wirklich zu verstehen und die PHP-Tool gibt Ihnen mit seinem für den Umgang Staatenlose Natur.

Darüber hinaus würde ich in Templating untersuchen. Perhaps Smarty?

Schließlich gelten alle normalen MVC-Entwurfsmuster genauso für PHP, und es gibt viele Implementierungen, wenn Sie etwas von der Stange verwenden möchten. Vielleicht möchten Sie Cake ausprobieren, wenn Sie ein Framework benötigen.

+1

PHP selbst ist eine Template-Engine, ich bin mir nicht sicher, Smarty ist wirklich eine gute Kombination mit irgendeinem realen Rahmen. Ich stimme Cake zu. – Kalium

+1

Kuchen steckt in der PHP4-Ära fest. Vermeiden Sie es und Smarty. – Charles

+0

@Charles, die kommende Veröffentlichung, CakePHP 2.0, wird rein PHP5 sein und viele der Paradigmen, die Sie mit CakePHP 1.3 (aktuelle Version) lernen, werden in CakePHP 2.0 angewendet. Außerdem gibt es keinen triftigen Grund, warum man es vermeiden sollte. – mikegreenberg

2

Welche Art von Rahmen sollte ich betrachten?

einen modernen Rahmen wie Kohana oder vielleicht etwas mehr technisch-OO wie Zend Framework Versuchen.

Sie könnten auch eine einfache procedural framework anstelle eines OO-Framework betrachten. PHP arbeitet sehr, sehr gut auf niedrigen Ebenen.

Vermeiden Sie Kuchen. Es versucht Rails-ähnlich zu sein, aber Rails-Idiome übersetzen nicht nur sehr schlecht in PHP, Cake steckt in der Design-Ära von PHP4 fest.

+0

Siehe meinen oben gemachten Kommentar. Ich bin mit Ruby nicht besonders vertraut, aber ich bin neugierig, welche Idiome Cake zu emulieren versucht und was es bedeutet, "in PHP4 stecken zu bleiben" macht es zu einer schlechten Wahl. – mikegreenberg

+0

@Michael, Vergleichen Sie die CakePHP ActiveRecord-Implementierung mit der in Rails. Die CakePHP-Implementierung ist aufgrund der strengen Einschränkungen, die ein PHP4-Ära-Design erzwingt, im Vergleich schrecklich entstellt. (Es wird auch in 2.0 nicht besser werden, wenn die PHP-Minimalversion 5.2 wird. Um eine wirklichkeitsgetreuere Rails ActiveRecord-Implementierung zu erhalten, benötigen Sie Late Static Binding, eine 5.3-Funktion.) – Charles

2

People Pods kann das sein, was Sie suchen. Es ist ein PHP-Framework, das im Hinblick auf soziale Netzwerke entwickelt wurde.

7

Ich schlage vor, Sie am Yii Framework einen Blick. Es ist sehr gut gestaltet und wurde mit Leistung im Hinterkopf geschrieben. Sie haben sich stark auf die Optimierung ihres Codes konzentriert, um sie in Kombination mit einem Opcode-Cache wie APC zu verwenden - kein anderes Framework hat das gleiche Level von performance improvement gezeigt, wenn es mit APC verwendet wird. Neben der Leistung bietet das Framework auch viele integrierte Sicherheitsfunktionen (sichere Sitzungen mit HMAC, SQL Injection Prevention, XSS Prevention usw.).), Formulare, Validierung von Benutzereingaben, Caching, Authentifizierung/Zugriffssteuerung und JQuery-Integration.

Wenn Sie ein intermediärer PHP-Programmierer sind, der nicht so erfahren genug ist, um Ihr eigenes Framework zu erstellen, dann ist Yii ein guter Startpunkt, da der Code sehr elegant ist und der Programmierer einige großartige Design-Entscheidungen getroffen hat Schreiben des Frameworks - einfach das Lesen des Yii-Codes macht eine gute Möglichkeit, um zu lernen, wie man guten PHP-Code erstellt/schreibt.

Just my two cents ...

+0

Most decent Framework so weit ... – cvsguimaraes

2

ich eigentlich dieses Recht jetzt aktuell mit Zend Framework zu tun, und es ist fantastisch gut ausarbeitet .. Zend ist ernst leistungsstark und skalierbar.

Ich habe es immer gehasst, all die anfängliche Arbeit der Erstellung von Login-Accounts und Passwörtern zu tun und Dinge zu verwalten, um SESSIONS zu verwalten. Also plane ich eine frühe Überarbeitung dieses Projekts und forke einfach in jede andere Site, die Logins erfordert.

Verwandte Themen