Normes de développement

Répertoire de l'application

Le répertoire de l'application peut être placé n'importe où.

Fichier d'entrée

Tout comme une application PHP sous nginx+PHP-FPM, une application Workerman nécessite également un fichier d'entrée. Il n'y a pas d'exigence sur le nom du fichier d'entrée, et ce fichier est exécuté en mode PHP Cli.

Le fichier d'entrée contient du code lié à la création de processus d'écoute, comme dans le morceau de code basé sur Worker ci-dessous.

test.php

<?php
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';

// Crée un Worker écoutant sur le port 2345, utilisant le protocole http
$http_worker = new Worker("http://0.0.0.0:2345");

// Démarrage de 4 processus pour fournir des services
$http_worker->count = 4;

// Lors de la réception des données envoyées par le navigateur, répondre hello world au navigateur
$http_worker->onMessage = function(TcpConnection $connection, $data)
{
    // Envoyer hello world au navigateur
    $connection->send('hello world');
};

Worker::runAll();

Normes de code dans Workerman

  1. Les classes utilisent la notation camelCase avec la première lettre en majuscule. Le nom du fichier de la classe doit correspondre au nom de la classe à l'intérieur pour permettre le chargement automatique. Par exemple :

    class UserInfo
    {
    ...
  2. Utilisez des espaces de noms, le nom de l'espace de noms correspond au chemin du répertoire et est basé sur le répertoire racine du projet du développeur.

Par exemple, pour le projet MyApp/, le fichier de classe MyApp/MyClass.php, étant dans le répertoire racine du projet, omet l'espace de noms. Pour le fichier de classe MyApp/Protocols/MyProtocol.php, comme MyProtocol.php se trouve dans le répertoire Protocols du projet MyApp, il faut ajouter l'espace de noms namespace Protocols;, comme ci-dessous :

namespace Protocols;
class MyProtocol
{
....
  1. Les fonctions ordinaires et les noms de variables utilisent la notation en minuscules avec des underscores, par exemple

    $connection_list = array();
    function get_connection_list()
    {
    ....
  2. Les membres de classe et les méthodes de la classe utilisent la notation camelCase avec la première lettre en minuscule, par exemple :

    public $connectionList;
    public function getConnectionList();
  3. Les paramètres des fonctions et des classes utilisent la notation en minuscules avec des underscores

    
    function get_connection_list($one_param, $tow_param)
    {
    ....