Heim > PHP-Framework > Swoole > Hauptteil

Einführung von swoole http_server zur Anpassung an thinkphp 5.1

coldplay.xixi
Freigeben: 2021-03-23 11:31:42
nach vorne
2472 Leute haben es durchsucht

1. Umgebungsbeschreibung ):

swooleEinführung von swoole http_server zur Anpassung an thinkphp 5.1

2

1. Erstellen Sie ein neues Serververzeichnis im tp-Stammverzeichnis, um swool_http_server zu speichern.
  • http_server.php-Codecode
  • <?php
    /**
     * Created by PhpStorm.
     * Date: 2018/7/22
     * Time: 15:12
     */
    $http = new swoole_http_server(&#39;0.0.0.0&#39;, 8811);
    
    //set函数用于设置swoole_server运行时的各项参数
    $http->set([
        &#39;worker_num&#39;=>4 ,//worker process num
    ]);
    
    //此事件在Worker进程/Task进程启动时发生
    $http->on(&#39;WorkerStart&#39;,function (swoole_server $server, $worker_id){
        // 定义应用目录
        define(&#39;APP_PATH&#39;, __DIR__ . &#39;/../application/&#39;);
        // 加载基础文件 ThinkPHP 引导文件
        require __DIR__ . &#39;/../thinkphp/base.php&#39;;
    
    });
    
    $http->on(&#39;request&#39;, function ($request, $response){
    
        if($request->server){
            foreach ($request->server as $key => $val){
                $_SERVER[strtoupper($key)] = $val;
            }
        }
        if($request->header){
            foreach ($request->header as $key => $val){
                $_SERVER[strtoupper($key)] = $val;
            }
        }
        if($request->get){
            foreach ($request->get as $key => $val){
                $_GET[$key] = $val;
            }
        }
        if($request->post){
            foreach ($request->post as $key => $val){
                $_POST[$key] = $val;
            }
        }
        ob_start();
        try{
            // thinkphp 执行应用并响应
            think\Container::get(&#39;app&#39;)
                ->run()
                ->send();
        }catch (\Exception $exception){
            // todo
        }
        $res = ob_get_contents();
        ob_end_clean();
        $response->end($res);
    });
    
    $http->start();
    Nach dem Login kopieren

    2. Rufen Sie das Dienstverzeichnis auf, führen Sie php http_server.php aus, um swoole_http_server zu starten

Es wird kein Fehler gemeldet und der Start ist erfolgreich. 3. Erstellen Sie eine neue Testmethode im Index und greifen Sie auf den Server-Port 8811 zu

Das obige ist der detaillierte Inhalt vonEinführung von swoole http_server zur Anpassung an thinkphp 5.1. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage