Normas de Desarrollo

Directorio de la Aplicación

El directorio de la aplicación puede ubicarse en cualquier lugar.

Archivo de Entrada

Al igual que las aplicaciones PHP bajo nginx+PHP-FPM, las aplicaciones en Workerman también requieren un archivo de entrada. No hay requisitos específicos para el nombre del archivo de entrada, y este se ejecuta de forma PHP Cli.

En el archivo de entrada se encuentra el código relacionado con la creación de procesos de escucha, como el siguiente fragmento de código basado en Worker.

test.php

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

// Crear un Worker que escuche el puerto 2345, utilizando el protocolo http
$http_worker = new Worker("http://0.0.0.0:2345");

// Iniciar 4 procesos para proporcionar servicios externos
$http_worker->count = 4;

// Responder hello world al navegador cuando se recibe datos enviados desde el navegador
$http_worker->onMessage = function(TcpConnection $connection, $data)
{
    // Enviar hello world al navegador
    $connection->send('hello world');
};

Worker::runAll();

Normas de Código en Workerman

  1. Las clases deben tener nombres en formato CamelCase con la primera letra en mayúscula, el nombre del archivo de clase debe coincidir con el nombre de la clase interna para permitir la carga automática. Por ejemplo:

    class UserInfo
    {
    ...
  2. Utilizar espacios de nombres; el nombre del espacio de nombres debe corresponderse con la ruta del directorio, tomando como base el directorio raíz del proyecto del desarrollador.

Por ejemplo, en el proyecto MyApp/, el archivo de clase MyApp/MyClass.php no requiere espacio de nombres ya que está en el directorio raíz del proyecto. El archivo de clase MyApp/Protocols/MyProtocol.php sí requiere el espacio de nombres namespace Protocols; porque MyProtocol.php está en el directorio Protocols del proyecto MyApp, como se muestra a continuación:

namespace Protocols;
class MyProtocol
{
....
  1. Los nombres de funciones y variables deben seguir el formato de minúsculas con guiones bajos. Por ejemplo:

    $connection_list = array();
    function get_connection_list()
    {
    ....
  2. Los miembros y métodos de la clase deben utilizar la forma CamelCase con la primera letra en minúscula. Por ejemplo:

    public $connectionList;
    public function getConnectionList();
  3. Los parámetros de funciones y clases deben seguir el formato de minúsculas con guiones bajos.

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