มาตรฐานการพัฒนา

ไดเรกทอรีของแอปพลิเคชัน

ไดเรกทอรีของแอปพลิเคชันสามารถวางไว้ที่ที่ใดก็ได้

ไฟล์ทางเข้า

เหมือนกับแอปพลิเคชัน PHP ในระบบ nginx+PHP-FPM ไฟล์ทางเข้าของแอปพลิเคชันใน Workerman จำเป็นต้องมีและสามารถตั้งชื่อไฟล์ทางเข้าตามที่ต้องการ และไฟล์ทางเข้านี้จะถูกเรียกใช้โดยวิธี PHP Cli

ไฟล์ทางเข้าหลักจะมีโค้ดที่เกี่ยวกับการสร้างกระบวนการเชื่อมต่อ เช่น ตัวอย่างโค้ดที่จะพัฒนาขึ้นบน Worker ดังต่อไปนี้

test.php

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

// สร้าง Worker เพื่อฟังการต่อในพอร์ต 2345 โดยใช้โปรโตคอล http
$http_worker = new Worker("http://0.0.0.0:2345");

// เริ่มต้นกระบวนการให้บริการต่อภายนอก 4 กระบวนการ
$http_worker->count = 4;

// เมื่อได้รับข้อมูลจากเบราว์เซอร์ จะตอบกลับ hello world ไปยังเบราว์เซอร์
$http_worker->onMessage = function(TcpConnection $connection, $data)
{
    // ส่งข้อความ hello world ไปยังเบราว์เซอร์
    $connection->send('hello world');
};

Worker::runAll();

มาตรฐานการเขียนโค้ดใน Workerman

  1. ชื่อคลาสใช้รูปแบบชื่อตัวอักษรต้นตัวใหญ่แบบคาเมลแบบ ชื่อไฟล์คลาสจะต้องเหมือนกับชื่อคลาสภายในไฟล์เพื่อให้โหลดโดยอัตโนมัติ ตัวอย่างเช่น

    class UserInfo
    {
    ...
  2. ใช้เนมสเปซ โดยเรียกชื่อเด้อพื้นที่เด้ง และใช้ไดเรกทอรีโปรเจกต์ของนักพัฒนาเป็นฐาน

    ตัวอย่างเช่น โปรเจกต์ชื่อ MyApp/ ไฟล์คลาสชื่อ MyApp/MyClass.php เนื่องจากอยู่ในไดเรกทอรีหลักของโปรเจกต์ ดังนั้นเนมสเปซจะเป็นไฟล์ที่ทำงานชื่อ namespace Protocols; ดังนี้

    namespace Protocols;
    class MyProtocol
    {
    ....
  3. ชื่อฟังก์ชันและตัวแปรทั่วไปจะใช้โครงสร้างตัวอักษรเล็ก ๆ และขีดล่าง เช่น

    $connection_list = array();
    function get_connection_list()
    {
    ....
  4. สมาชิกคลาสและเมทอดของคลาสจะใช้รูปแบบชื่อตัวอักษรตัวแรกเล็กแบบคาเมล เช่น

    public $connectionList;
    public function getConnectionList();
  5. พารามิเตอร์ของฟังก์ชันและคลาสจะใช้รูปแบบตัวอักษรเล็กและขีดล่าง เช่น

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