Compare commits

...

8 Commits

Author SHA1 Message Date
as2252258 2e54326aba eee 2025-07-16 09:17:03 +08:00
as2252258 59632ac4a3 eee 2025-07-16 09:09:56 +08:00
as2252258 da5a6a6b83 eee 2025-07-14 18:12:17 +08:00
as2252258 d758d21f08 eee 2025-07-11 17:44:34 +08:00
as2252258 c59212da78 eee 2025-07-11 17:32:17 +08:00
as2252258 9ce0cb96bf eee 2025-07-11 16:27:14 +08:00
as2252258 c7b5d5fb59 eee 2025-01-18 20:45:37 +08:00
as2252258 daa89f3794 eee 2024-11-28 14:35:20 +08:00
6 changed files with 80 additions and 22 deletions
+4 -5
View File
@@ -9,7 +9,7 @@
],
"license": "MIT",
"require": {
"php": ">=8.3",
"php": ">=8.4",
"ext-json": "*",
"ext-fileinfo": "*",
"ext-pdo": "*",
@@ -23,19 +23,18 @@
"ext-openssl": "*",
"ext-swoole": "*",
"ext-msgpack": "*",
"symfony/console": "~v5.3.10",
"symfony/console": "^v7.3.1",
"psr/log": "1.*",
"composer-runtime-api": "^2.0",
"psr/http-server-middleware": "1.0.1",
"ext-pcntl": "*",
"ext-sockets": "*",
"nikic/php-parser": "^4.15",
"nikic/php-parser": "^v5.5.0",
"ext-inotify": "*",
"game-worker/kiri-pool": "~v1.0",
"monolog/monolog": "^2.9",
"psr/container": "^2.0",
"ext-libsodium": "*",
"swiftmailer/swiftmailer": "^6.3"
"swiftmailer/swiftmailer": "^v6.3.0"
},
"replace": {
"symfony/polyfill-apcu": "*",
+75 -7
View File
@@ -4,6 +4,7 @@ defined('APP_PATH') or define('APP_PATH', realpath(__DIR__ . '/../../'));
use JetBrains\PhpStorm\Pure;
use Kiri\Abstracts\Kernel;
use Kiri\Application;
use Kiri\Config\ConfigProvider;
use Kiri\Core\ArrayAccess;
@@ -12,6 +13,7 @@ use Kiri\Events\EventDispatch;
use Kiri\Events\EventProvider;
use Kiri\Router\Request;
use Kiri\Router\Response;
use Kiri\Server\Task\TaskExecute;
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\ResponseInterface;
use Swoole\Process;
@@ -46,17 +48,80 @@ if (!function_exists('json_validate')) {
if (!function_exists('application')) {
/**
* @param Kernel $Kernel
* @return Application
* @throws
*/
function application(): Application
function application(Kernel $Kernel): Application
{
return Kiri::getDi()->get(Application::class);
$application = Kiri::getDi()->get(Application::class);
$application->commands($Kernel);
return $application;
}
}
if (!function_exists('task')) {
/**
* @param string $handler
* @param mixed $data
* @param int $dstWorkerId
* @param callable|null $finishFinishCallback
* @return void
* @throws Exception
*/
function task(string $handler, mixed $data, int $dstWorkerId = -1, ?callable $finishFinishCallback = null): void
{
$execute = Kiri::getDi()->get(TaskExecute::class);
$execute->task($handler, $data, $dstWorkerId, $finishFinishCallback);
}
}
if (!function_exists('taskWait')) {
/**
* @param string $handler
* @param mixed $data
* @param float $timeout
* @param int $dstWorkerId
* @return mixed
* @throws Exception
*/
function taskWait(string $handler, mixed $data, float $timeout = 0.5, int $dstWorkerId = -1): mixed
{
$execute = Kiri::getDi()->get(TaskExecute::class);
return $execute->taskWait($handler, $data, $timeout, $dstWorkerId);
}
}
if (!function_exists('taskCo')) {
/**
* @param array $tasks
* @param float $timeout
* @return false|array
*/
function taskCo(array $tasks, float $timeout = 0.5): false|array
{
$execute = Kiri::getDi()->get(TaskExecute::class);
return $execute->taskCo($tasks, $timeout);
}
}
if (!function_exists('taskWaitMulti')) {
/**
* @param array $tasks
* @param float $timeout
* @return false|array
*/
function taskWaitMulti(array $tasks, float $timeout = 0.5): false|array
{
$execute = Kiri::getDi()->get(TaskExecute::class);
return $execute->taskWaitMulti($tasks, $timeout);
}
}
if (!function_exists('make')) {
@@ -82,7 +147,8 @@ if (!function_exists('isJson')) {
function isJson(?string $string): bool
{
if (is_null($string)) return false;
if (is_null($string))
return false;
return (str_starts_with($string, '{') && str_ends_with($string, '}'))
|| (str_ends_with($string, '[') && str_starts_with($string, ']'));
}
@@ -142,7 +208,8 @@ if (!function_exists('checkPortIsAlready')) {
{
if (!Kiri::getPlatform()->isLinux()) {
exec("lsof -i :" . $port . " | grep -i 'LISTEN' | awk '{print $2}'", $output);
if (empty($output)) return FALSE;
if (empty($output))
return FALSE;
$output = explode(PHP_EOL, $output[0]);
return $output[0];
}
@@ -696,7 +763,7 @@ if (!function_exists('process_name_set')) {
* @param string|null $prefix
* @throws
*/
function process_name_set(int $pid, string $prefix = NULL): void
function process_name_set(int $pid, ?string $prefix = NULL): void
{
if (Kiri::getPlatform()->isMac()) {
return;
@@ -842,7 +909,8 @@ if (!function_exists('jTraceEx')) {
{
$starter = $seen ? 'Caused by: ' : '';
$result = [];
if (!$seen) $seen = [];
if (!$seen)
$seen = [];
$trace = $e->getTrace();
$prev = $e->getPrevious();
$result[] = sprintf('%s%s: %s', $starter, $e::class, $e->getMessage());
+1 -1
View File
@@ -185,7 +185,7 @@ class Str
* @return array
* 剩余天,带分秒
*/
public static function timeout($endTime, int $startTime = NULL): array
public static function timeout($endTime, ?int $startTime = NULL): array
{
$endTime = $endTime - (!empty($startTime) ? $startTime : time());
-5
View File
@@ -11,17 +11,12 @@ namespace Kiri\Error;
use Closure;
use ErrorException;
use Exception;
use Kiri\Abstracts\Component;
use Psr\Container\ContainerInterface;
use Kiri\Di\Inject\Container;
use ReflectionException;
use Kiri\Events\OnSystemError;
use Throwable;
/**
* Class ErrorHandler
* hahahah
* @package Kiri\Base
* @property-read $asError
*/
-1
View File
@@ -9,7 +9,6 @@ use Monolog\Formatter\LineFormatter;
use Monolog\Handler\RotatingFileHandler;
use Monolog\Logger;
use Psr\Log\LoggerInterface;
use ReflectionException;
/**
-3
View File
@@ -9,12 +9,9 @@ declare(strict_types=1);
namespace Kiri\Redis;
use Exception;
use Kiri;
use Kiri\Exception\RedisConnectException;
use Kiri\Pool\Pool;
use RedisException;
use wchat\common\Result;
use function config;
/**