PHP 8.2.30
Preview: server.php Size: 4.68 KB
//opt/alt/tests/alt-php85-pecl-memcached_3.2.0-3.el8/tests/server.php

<?php

$server = new MemcachedServer();

$server->on (Memcached::ON_CONNECT,
             function ($remote_addr) {
                 echo "Incoming connection from {$remote_addr}" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_ADD,
             function ($client_id, $key, $value, $flags, $expiration, &$cas) {
                 echo "client_id=[$client_id]: Add key=[$key], value=[$value], flags=[$flags], expiration=[$expiration]" . PHP_EOL;
                 $cas = 15;
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_APPEND,
             function ($client_id, $key, $value, $cas, &$result_cas) {
                 echo "client_id=[$client_id]: Append key=[$key], value=[$value], cas=[$cas]" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_PREPEND,
             function ($client_id, $key, $value, $cas, &$result_cas) {
                 echo "client_id=[$client_id]: Prepend key=[$key], value=[$value], cas=[$cas]" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_INCREMENT,
             function ($client_id, $key, $delta, $initial, $expiration, &$result, &$result_cas) {
                 echo "client_id=[$client_id]: Incrementing key=[$key], delta=[$delta], initial=[$initial], expiration=[$expiration]" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_DECREMENT,
             function ($client_id, $key, $delta, $initial, $expiration, &$result, &$result_cas) {
                 echo "client_id=[$client_id]: Decrementing key=[$key], delta=[$delta], initial=[$initial], expiration=[$expiration]" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_DELETE,
             function ($client_id, $key, $cas) {
                 echo "client_id=[$client_id]: Delete key=[$key], cas=[$cas]" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_FLUSH,
             function ($client_id, $when) {
                 echo "client_id=[$client_id]: Flush when=[$when]" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_GET,
             function ($client_id, $key, &$value, &$flags, &$cas) {
                 echo "client_id=[$client_id]: Get key=[$key]" . PHP_EOL;
                 $value = "Hello to you client!";
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_NOOP,
             function ($client_id) {
                 echo "client_id=[$client_id]: Noop" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_REPLACE,
             function ($client_id, $key, $value, $flags, $expiration, $cas, &$result_cas) {
                 echo "client_id=[$client_id]: Replace key=[$key], value=[$value], flags=[$flags], expiration=[$expiration], cas=[$cas]" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });
             
$server->on (Memcached::ON_SET,
             function ($client_id, $key, $value, $flags, $expiration, $cas, &$result_cas) {
                 echo "client_id=[$client_id]: Set key=[$key], value=[$value], flags=[$flags], expiration=[$expiration], cas=[$cas]" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_STAT,
             function ($client_id, $key, array &$values) {
                echo "client_id=[$client_id]: Stat key=[$key]" . PHP_EOL;
                
                if ($key === "scalar") {
                    $values = "you want it, you get it";
                } elseif ($key === "numeric array") {
                    $values = [-1 => "one", "two", "three"];
                } elseif ($key === "empty") {
                    $values = [];
                } else {
                    $values["key"] = $key;
                    $values["foo"] = "bar";
                }
                return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_VERSION,
             function ($client_id, &$value) {
                 echo "client_id=[$client_id]: Version" . PHP_EOL;
                 $value = "1.1.1";
                 return Memcached::RESPONSE_SUCCESS;
             });

$server->on (Memcached::ON_QUIT,
             function ($client_id) {
                 echo "client_id=[$client_id]: Client quit" . PHP_EOL;
                 return Memcached::RESPONSE_SUCCESS;
             });

$addr = ($_SERVER['argv'][1] ?? "127.0.0.1:3434");
echo "Listening on $addr" . PHP_EOL;
$server->run($addr);

Directory Contents

Dirs: 0 × Files: 103

Name Size Perms Modified Actions
183 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
341 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
651 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
781 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
701 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
429 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.25 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
921 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
402 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.18 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
903 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
976 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
406 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1012 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
795 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
629 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
3.75 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
324 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.98 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.91 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
591 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
154 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
447 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
826 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
435 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.59 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
392 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.34 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
545 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.12 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
865 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1023 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1012 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.13 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
642 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
580 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.78 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
863 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.20 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
494 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.37 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
807 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.39 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.11 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
302 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
356 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
540 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.48 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
357 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
3.18 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
3.26 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
322 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
2.84 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
2.72 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
686 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
470 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.30 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
639 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
644 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
398 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.78 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
800 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
757 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
2.26 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
4.68 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
629 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
543 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
662 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
655 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
771 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
698 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
706 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
726 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
735 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.00 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.58 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.48 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
630 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
485 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.14 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.05 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.00 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
335 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
394 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
447 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
2.17 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
4.76 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.85 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
2.76 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
451 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
469 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
437 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
455 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
501 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
513 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
348 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
360 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
633 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
2.52 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
627 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.03 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
1.08 KB lrw-r--r-- 2025-12-23 23:35:53
Edit Download
269 B lrw-r--r-- 2025-12-23 23:35:53
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).