Entwicklungsrichtlinien
Anwendungsordner
Der Anwendungsordner kann an beliebiger Stelle platziert werden.
Einstiegspunkt
Wie bei einer PHP-Anwendung unter nginx+PHP-FPM benötigt auch die Anwendung in Workerman eine Einstiegspunktdatei. Es gibt keine Anforderungen an den Namen der Einstiegspunktdatei, und sie wird im PHP-CLI-Modus ausgeführt.
In der Einstiegspunktdatei befindet sich der Code zum Erstellen von Überwachungsprozessen, beispielsweise der folgende, auf Worker basierende Code-Ausschnitt.
test.php
<?php
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';
// Erstelle einen Worker, der Port 2345 überwacht und das http-Protokoll zur Kommunikation verwendet
$http_worker = new Worker("http://0.0.0.0:2345");
// Starte 4 Prozesse, um Dienstleistungen anzubieten
$http_worker->count = 4;
// Wenn Daten vom Browser empfangen werden, antworte mit hello world
$http_worker->onMessage = function(TcpConnection $connection, $data)
{
// Sende hello world an den Browser
$connection->send('hello world');
};
Worker::runAll();
Codierungsstandards in Workerman
-
Klassen verwenden die Camel-Case-Schreibweise mit einem großen Anfangsbuchstaben; der Dateiname der Klasse muss mit dem Klassennamen innerhalb der Datei übereinstimmen, um das Autoloading zu ermöglichen. Zum Beispiel:
class UserInfo { ... -
Verwenden Sie Namespaces; der Namespace-Name entspricht dem Verzeichnis-Pfad und basiert auf dem Stammverzeichnis des Projekts des Entwicklers.
Zum Beispiel für das Projekt MyApp/, die Klassendatei MyApp/MyClass.php hat aufgrund der Platzierung im Stammverzeichnis des Projekts keinen Namespace. Die Klassendatei MyApp/Protocols/MyProtocol.php benötigt einen Namespace namespace Protocols; , weil MyProtocol.php im Protokollverzeichnis des MyApp-Projekts liegt, wie folgt:
namespace Protocols;
class MyProtocol
{
....
-
Normale Funktionen und Variablennamen verwenden Kleinbuchstaben mit Unterstrichen, zum Beispiel
$connection_list = array(); function get_connection_list() { .... -
Klassenmitglieder und -methoden verwenden die Camel-Case-Schreibweise mit einem kleinen Anfangsbuchstaben, zum Beispiel:
public $connectionList; public function getConnectionList(); -
Die Parameter von Funktionen und Klassen verwenden Kleinbuchstaben mit Unterstrichen
function get_connection_list($one_param, $two_param) { ....