tncrazvan / catpaw
此包已被废弃,不再维护。未建议替代包。
catpaw项目
3.3.1
2024-05-24 17:08 UTC
Requires
- php: ^8.2
- ext-mbstring: *
- ext-openssl: *
- ext-pcntl: *
- ext-zlib: *
- amphp/amp: ^3.0
- amphp/byte-stream: ^2.1
- amphp/file: ^3.0
- amphp/http-client: ^5.0
- amphp/http-server: ^3.3
- amphp/parallel: ^2.0
- amphp/process: ^2.0
- amphp/websocket-server: ^4.0
- monolog/monolog: ^3.3
- revolt/event-loop: ^1.0
- twig/twig: ^3.0
- vlucas/phpdotenv: ^5.4
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.8
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^9
- dev-master
- 3.3.1
- 3.3.0
- 3.2.6
- 3.2.5
- 3.2.4
- 3.2.3
- 3.2.2
- 3.2.1
- 3.2.0
- 3.1.0
- 3.0.12
- 3.0.11
- 3.0.10
- 3.0.9
- 3.0.8
- 3.0.7
- 3.0.6
- 3.0.5
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 2.4.10
- 2.4.9
- 2.4.8
- 2.4.7
- 2.4.6
- 2.4.5
- 2.4.4
- 2.4.3
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.26
- 2.3.25
- 2.3.24
- 2.3.23
- 2.3.22
- 2.3.21
- 2.3.20
- 2.3.19
- 2.3.18
- 2.3.17
- 2.3.16
- 2.3.15
- 2.3.14
- 2.3.13
- 2.3.12
- 2.3.11
- 2.3.10
- 2.3.9
- 2.3.8
- 2.3.7
- 2.3.6
- 2.3.5
- 2.3.4
- 2.3.3
- 2.3.2
- 2.3.1
- 2.3
- 2.2.3
- 2.2.2
- 2.2.1
- 2.2
- 2.1.38
- 2.1.37
- 2.1.36
- 2.1.35
- 2.1.34
- 2.1.33
- 2.1.32
- 2.1.31
- 2.1.30
- 2.1.29
- 2.1.28
- 2.1.27
- 2.1.26
- 2.1.25
- 2.1.24
- 2.1.23
- 2.1.22
- 2.1.21
- 2.1.20
- 2.1.19
- 2.1.18
- 2.1.17
- 2.1.16
- 2.1.15
- 2.1.14
- 2.1.13
- 2.1.12
- 2.1.11
- 2.1.10
- 2.1.9
- 2.1.8
- 2.1.7
- 2.1.6
- 2.1.5
- 2.1.4
- 2.1.3
- 2.1.2
- 2.1.1
- 2.1.0
- 2.0.69
- 2.0.68
- 2.0.67
- 2.0.66
- 2.0.65
- 2.0.64
- 2.0.63
- 2.0.62
- 2.0.61
- 2.0.60
- 2.0.59
- 2.0.58
- 2.0.57
- 2.0.56
- 2.0.55
- 2.0.54
- 2.0.53
- 2.0.52
- 2.0.51
- 2.0.50
- 2.0.49
- 2.0.48
- 2.0.47
- 2.0.46
- 2.0.45
- 2.0.44
- 2.0.43
- 2.0.42
- 2.0.41
- 2.0.40
- 2.0.39
- 2.0.38
- 2.0.37
- 2.0.36
- 2.0.35
- 2.0.34
- 2.0.33
- 2.0.32
- 2.0.31
- 2.0.30
- 2.0.29
- 2.0.28
- 2.0.27
- 2.0.26
- 2.0.25
- 2.0.24
- 2.0.23
- 2.0.22
- 2.0.21
- 2.0.20
- 2.0.19
- 2.0.18
- 2.0.17
- 2.0.16
- 2.0.15
- 2.0.14
- 2.0.13
- 2.0.12
- 2.0.11
- 2.0.10
- 2.0.9
- 2.0.8
- 2.0.7
- 2.0.6
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.0.22
- 1.0.21
- 1.0.20
- 1.0.19
- 1.0.18
- 1.0.17
- 1.0.16
- 1.0.15
- 1.0.14
- 1.0.13
- 1.0.12
- 1.0.11
- 1.0.10
- 1.0.9
- 1.0.8
- 1.0.7
- 1.0.6
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
This package is auto-updated.
Last update: 2024-05-24 22:11:27 UTC
README
Catpaw是一个带有电池组的意见依赖注入库,专为开发异步和声明式通用程序而设计。
它利用php属性提供声明式API,以及amphp平台使程序异步。
| 目录 |
|---|
| ⚡ 错误管理 |
| 🌐 路由器 |
| 🌐 路径参数 |
| 🌐 开放API |
| 🌐 会话 |
| 🌐 字节范围请求 |
| ⚡ 入口 |
| ⚡ 自定义属性 |
| 💡 树莓派 |
| ⚡ 服务 |
| ⚡ 存储 |
| ⚡ 队列 |
| ⚡ 调度 |
| ⚡ 构建 |
| 🌐 Websockets |
| 🌐 视图 (Twig) |
| ⚡ 状态 |
| ⚡ 信号 |
| ⚡ Go互操作 |
注意
此项目针对Linux发行版,某些功能可能在Windows和/或MacOS上无法正常工作。
请随时为特定平台修复问题贡献力量。
开始使用
您需要至少php 8.2和php-mbstring扩展。
使用其中一个启动模板创建一个新项目。
- 您可以从头开始
composer create-project catpaw/starter
- 您可以从Web服务器开始
composer create-project catpaw/web-starter
每个应用程序必须在全局作用域中声明一个main函数,它将是您的入口点
<?php // src/main.php use Psr\Log\LoggerInterface; function main(LoggerInterface $logger){ $logger->info("hello world"); }
创建新项目后,您可以使用以下命令运行它
composer dev:watch
以监视文件更改(在开发中很有用)或
composer prod:start
用于生产模式。
构建 & 运行
您可以使用以下命令将应用程序构建成一个单一的.phar文件,但这不是必需的
composer prod:build
构建过程可以在build.ini文件中配置。
在构建完您的应用程序后,您可以使用以下方式简单地运行它:
php app.phar
默认情况下(请检查build.ini),生成的.phar文件包含以下目录:
./src./vendor./bin./.build-cache(在编译时创建)
这意味着它是一个便携式二进制文件,您只需确保目标机器上已安装php即可。
使用VSCode进行调试
-
安装xdebug
apt install php8.2-xdebug -
将以下配置放入您的
./.vscode/launch.json文件中{ "version": "0.2.0", "configurations": [ { "name": "Launch", "type": "php", "request": "launch", "program": "${workspaceRoot}/bin/start", "args": [ "--libraries='./src/lib'", "--entry='./src/main.php'" ], "cwd": "${workspaceRoot}", "runtimeArgs": [ "-dxdebug.start_with_request=yes" ], "env": { "XDEBUG_MODE": "debug,develop", "XDEBUG_CONFIG": "client_port=${port}" } }, { "name": "Listen", "type": "php", "request": "launch", "port": 9003 } ] } -
开始调试