11<?php
2+ /**
3+ * This file is part of Swoole.
4+ *
5+ * @link https://www.swoole.com
6+ * @contact team@swoole.com
7+ * @license https://github.com/swoole/library/blob/master/LICENSE
8+ */
9+
10+ declare (strict_types=1 );
211function dump ($ var )
312{
4- return highlight_string ("<?php \n\$array = " . var_export ($ var , true ) . " ; " , true );
13+ return highlight_string ("<?php \n\$array = " . var_export ($ var , true ) . ' ; ' , true );
514}
615
716$ key_dir = dirname (dirname (__DIR__ )) . '/tests/ssl ' ;
8- $ http = new Swoole \Http \Server (" 0.0.0.0 " , 9501 , SWOOLE_BASE );
17+ $ http = new Swoole \Http \Server (' 0.0.0.0 ' , 9501 , SWOOLE_PROCESS );
918//$http = new Swoole\Http\Server("::", 9501, SWOOLE_BASE, SWOOLE_SOCK_TCP6);
1019//$http = new Swoole\Http\Server("0.0.0.0", 9501);
1120//$http = new Swoole\Http\Server("0.0.0.0", 9501, SWOOLE_BASE, SWOOLE_SOCK_TCP | SWOOLE_SSL);
1221//https
1322//$http = new Swoole\Http\Server("0.0.0.0", 9501, SWOOLE_BASE, SWOOLE_SOCK_TCP | SWOOLE_SSL);
1423//$http->setGlobal(HTTP_GLOBAL_ALL, HTTP_GLOBAL_GET|HTTP_GLOBAL_POST|HTTP_GLOBAL_COOKIE);
1524$ http ->set ([
16- // 'daemonize' => 1,
17- // 'open_cpu_affinity' => 1,
18- // 'task_worker_num' => 1,
25+ // 'daemonize' => 1,
26+ // 'open_cpu_affinity' => 1,
27+ // 'task_worker_num' => 1,
1928 //'open_cpu_affinity' => 1,
2029 //'task_worker_num' => 100,
2130 //'enable_port_reuse' => true,
2231 // 'http_compression' => false,
23- 'worker_num ' => 1 ,
32+ 'worker_num ' => 1 ,
2433 'upload_max_filesize ' => 1 * 1024 * 1024 * 1024 ,
25- 'package_max_length ' => 1 * 1024 * 1024 ,
34+ 'package_max_length ' => 1 * 1024 * 1024 ,
2635 //'log_file' => __DIR__.'/swoole.log',
27- // 'reactor_num' => 24,
36+ // 'reactor_num' => 24,
2837 //'dispatch_mode' => 3,
2938 //'discard_timeout_request' => true,
30- // 'open_tcp_nodelay' => true,
31- // 'open_mqtt_protocol' => true,
39+ // 'open_tcp_nodelay' => true,
40+ // 'open_mqtt_protocol' => true,
3241 //'task_worker_num' => 1,
3342 //'user' => 'www-data',
3443 //'group' => 'www-data',
35- //'daemonize' => true,
36- // 'ssl_cert_file' => $key_dir.'/ssl.crt',
37- // 'ssl_key_file' => $key_dir.'/ssl.key',
38- // 'enable_static_handler' => true,
39- // 'document_root' => '/home/htf/workspace/php/www.swoole.com/web/'
44+ //'daemonize' => true,
45+ // 'ssl_cert_file' => $key_dir.'/ssl.crt',
46+ // 'ssl_key_file' => $key_dir.'/ssl.key',
47+ // 'enable_static_handler' => true,
48+ // 'document_root' => '/home/htf/workspace/php/www.swoole.com/web/'
4049]);
4150
4251$ http ->listen ('127.0.0.1 ' , 9502 , SWOOLE_SOCK_TCP );
4352
4453function chunk (Swoole \Http \Request $ request , Swoole \Http \Response $ response )
4554{
46- $ response ->write (" <h1>hello world1</h1> " );
55+ $ response ->write (' <h1>hello world1</h1> ' );
4756 //sleep(1);
48- $ response ->write (" <h1>hello world2</h1> " );
57+ $ response ->write (' <h1>hello world2</h1> ' );
4958 //sleep(1);
5059 $ response ->end ();
5160}
5261
5362function no_chunk (Swoole \Http \Request $ request , Swoole \Http \Response $ response )
5463{
55- /**
64+ /*
5665 * Cookie Test
5766 */
5867 //$response->cookie('test1', '1234', time() + 86400, '/');
59- // $response->cookie('test2', '5678', time() + 86400);
60- // var_dump($response->cookie);
61- // var_dump($request->cookie);
62- // try
63- // {
64- // if (rand(1, 99) % 2 == 1)
65- // {
66- // throw new Exception("just for fun.");
67- // }
68- // $response->end("<h1>Hello Swoole. #".rand(1000, 9999)."</h1>");
69- // }
70- // catch(Exception $e)
71- // {
72- // $response->end("<h1>Exceptiom</h1><div>".$e->getMessage()."</div>");
73- // }
68+ // $response->cookie('test2', '5678', time() + 86400);
69+ // var_dump($response->cookie);
70+ // var_dump($request->cookie);
71+ // try
72+ // {
73+ // if (rand(1, 99) % 2 == 1)
74+ // {
75+ // throw new Exception("just for fun.");
76+ // }
77+ // $response->end("<h1>Hello Swoole. #".rand(1000, 9999)."</h1>");
78+ // }
79+ // catch(Exception $e)
80+ // {
81+ // $response->end("<h1>Exceptiom</h1><div>".$e->getMessage()."</div>");
82+ // }
7483 //var_dump($request->server['request_uri'], substr($request->server['request_uri'], -4, 4));
7584
7685 if (substr ($ request ->server ['request_uri ' ], -8 , 8 ) == 'test.jpg ' ) {
7786 $ response ->header ('Content-Type ' , 'image/jpeg ' );
7887 $ response ->sendfile (dirname (__DIR__ ) . '/test.jpg ' );
7988 return ;
80- } elseif ($ request ->server ['request_uri ' ] == '/test.txt ' ) {
89+ }
90+ if ($ request ->server ['request_uri ' ] == '/test.txt ' ) {
8191 $ last_modified_time = filemtime (__DIR__ . '/test.txt ' );
82- $ etag = md5_file (__DIR__ . '/test.txt ' );
92+ $ etag = md5_file (__DIR__ . '/test.txt ' );
8393 // always send headers
84- $ response ->header (" Last-Modified " , gmdate (" D, d M Y H:i:s " , $ last_modified_time ) . " GMT " );
85- $ response ->header (" Etag " , $ etag );
94+ $ response ->header (' Last-Modified ' , gmdate (' D, d M Y H:i:s ' , $ last_modified_time ) . ' GMT ' );
95+ $ response ->header (' Etag ' , $ etag );
8696 if (strtotime ($ request ->header ['if-modified-since ' ]) == $ last_modified_time or trim ($ request ->header ['if-none-match ' ]) == $ etag ) {
8797 $ response ->status (304 );
8898 $ response ->end ();
8999 } else {
90100 $ response ->sendfile (__DIR__ . '/test.txt ' );
91101 }
92102 return ;
93- } else if ($ request ->server ['request_uri ' ] == '/favicon.ico ' ) {
103+ }
104+ if ($ request ->server ['request_uri ' ] == '/favicon.ico ' ) {
94105 $ response ->status (404 );
95106 $ response ->end ();
96107 return ;
97- } else if ($ request ->server ['request_uri ' ] == '/big_response ' ) {
108+ }
109+ if ($ request ->server ['request_uri ' ] == '/big_response ' ) {
98110 var_dump ($ response ->end (str_repeat ('A ' , 16 * 1024 * 1024 )));
99111 return ;
100- } else if ($ request ->server ['request_uri ' ] == '/code ' ) {
112+ }
113+ if ($ request ->server ['request_uri ' ] == '/code ' ) {
101114 $ response ->sendfile (__FILE__ );
102115 return ;
103- } elseif ($ request ->server ['request_uri ' ] == '/save ' ) {
116+ }
117+ if ($ request ->server ['request_uri ' ] == '/save ' ) {
104118 file_put_contents (__DIR__ . '/httpdata ' , $ request ->getData ());
105119 $ response ->end ('hello ' );
106120 return ;
107- } else {
108- //var_dump($request->post);
109- //var_export($request->cookie);
110- // var_dump($request->rawContent());
111- // if ($request->server['request_method'] == 'POST')
112- // {
113- // var_dump($request->post);
114- // }
115- // echo "GET:" . var_export($_GET, true)."\n";
116- // echo "POST:" . var_export($_POST, true)."\n";
117- // echo "get:" . var_export($request->get, true)."\n";
118- // echo "post:" . var_export($request->post, true)."\n";
119- //var_dump($request->server);
120- $ output = '' ;
121- $ output .= "<h2>HEADER:</h2> " . dump ($ request ->header );
122- $ output .= "<h2>SERVER:</h2> " . dump ($ request ->server );
123- if (!empty ($ request ->files )) {
124- $ files = $ request ->files ;
125- foreach ($ files as &$ f ) {
126- $ f ['md5 ' ] = md5_file ($ f ['tmp_name ' ]);
127- }
128- $ output .= "<h2>FILE:</h2> " . dump ($ files );
129- }
130- if (!empty ($ request ->cookie )) {
131- $ output .= "<h2>COOKIES:</h2> " . dump ($ request ->cookie );
132- }
133- if (!empty ($ request ->get )) {
134- $ output .= "<h2>GET:</h2> " . dump ($ request ->get );
135- }
136- if (!empty ($ request ->post )) {
137- $ output .= "<h2>POST:</h2> " . dump ($ request ->post );
121+ }
122+ //var_dump($request->post);
123+ //var_export($request->cookie);
124+ // var_dump($request->rawContent());
125+ // if ($request->server['request_method'] == 'POST')
126+ // {
127+ // var_dump($request->post);
128+ // }
129+ // echo "GET:" . var_export($_GET, true)."\n";
130+ // echo "POST:" . var_export($_POST, true)."\n";
131+ // echo "get:" . var_export($request->get, true)."\n";
132+ // echo "post:" . var_export($request->post, true)."\n";
133+ //var_dump($request->server);
134+ $ output = '' ;
135+ $ output .= '<h2>HEADER:</h2> ' . dump ($ request ->header );
136+ $ output .= '<h2>SERVER:</h2> ' . dump ($ request ->server );
137+ if (!empty ($ request ->files )) {
138+ $ files = $ request ->files ;
139+ foreach ($ files as &$ f ) {
140+ $ f ['md5 ' ] = md5_file ($ f ['tmp_name ' ]);
138141 }
139- var_dump ($ request ->post );
140- //$response->header('X-Server', 'Swoole');
141- //unset($request, $response);
142- // Swoole\Timer::after(2000, function() use ( $response) {
143- $ response ->end ("<h1>Hello Swoole.</h1> " . $ output );
144- return ;
145- // });
142+ $ output .= '<h2>FILE:</h2> ' . dump ($ files );
143+ }
144+ if (!empty ($ request ->cookie )) {
145+ $ output .= '<h2>COOKIES:</h2> ' . dump ($ request ->cookie );
146146 }
147+ if (!empty ($ request ->get )) {
148+ $ output .= '<h2>GET:</h2> ' . dump ($ request ->get );
149+ }
150+ if (!empty ($ request ->post )) {
151+ $ output .= '<h2>POST:</h2> ' . dump ($ request ->post );
152+ }
153+ //$response->header('X-Server', 'Swoole');
154+ //unset($request, $response);
155+ // Swoole\Timer::after(2000, function() use ( $response) {
156+ $ response ->end ('<h1>Hello Swoole.</h1> ' . $ output );
157+ return ;
158+ // });
159+
147160 //var_dump($request);
148- // var_dump($_GET);
161+ // var_dump($_GET);
149162 //var_dump($_POST);
150163 //var_dump($_COOKIE);
151164 //$response->status(301);
152165 //$response->header("Location", "http://www.baidu.com/");
153166 //$response->cookie("hello", "world", time() + 3600);
154- // $response->header("Content-Type", "text/html; charset=utf-8");
167+ // $response->header("Content-Type", "text/html; charset=utf-8");
155168
156169 //var_dump($request->post);
157- // var_dump($request->get);
170+ // var_dump($request->get);
158171
159- // echo strlen(gzdeflate("<h1>Hello Swoole.</h1>"));
160- // $response->end("<h1>Hello Swoole.</h1>");
172+ // echo strlen(gzdeflate("<h1>Hello Swoole.</h1>"));
173+ // $response->end("<h1>Hello Swoole.</h1>");
161174 //$response->end("<h1>Hello Swoole. #".str_repeat('A', rand(100, 999))."</h1>");
162175 //global $http;
163176 //$http->task("hello world");
164177 $ file = realpath (__DIR__ . '/../ ' . $ request ->server ['request_uri ' ]);
165178 if (is_file ($ file )) {
166- echo "http get file= $ file \n" ;
179+ echo "http get file= { $ file} \n" ;
167180 if (substr ($ file , -4 ) == '.php ' ) {
168181 $ response ->gzip ();
169182 } else {
170183 $ response ->header ('Content-Type ' , 'image/jpeg ' );
171184 }
172185 $ content = file_get_contents ($ file );
173- echo " response size = " . strlen ($ content ) . "\n" ;
186+ echo ' response size = ' . strlen ($ content ) . "\n" ;
174187
175- // $response->write($content);
176- // $response->end();
188+ // $response->write($content);
189+ // $response->end();
177190
178191 $ response ->end ($ content );
179192 } else {
180- $ response ->end (" <h1>Hello Swoole.</h1> " );
193+ $ response ->end (' <h1>Hello Swoole.</h1> ' );
181194 }
182195}
183196
@@ -194,7 +207,7 @@ function no_chunk(Swoole\Http\Request $request, Swoole\Http\Response $response)
194207});
195208
196209$ http ->on ('finish ' , function () {
197- echo " task finish " ;
210+ echo ' task finish ' ;
198211});
199212
200213$ http ->on ('task ' , function () {
@@ -205,7 +218,6 @@ function no_chunk(Swoole\Http\Request $request, Swoole\Http\Response $response)
205218// echo "on close\n";
206219//});
207220
208-
209221$ http ->on ('workerStart ' , function ($ serv , $ id ) {
210222 //var_dump($serv);
211223});
0 commit comments