aegisora/is-array-rule
最新稳定版本:v1.0.0
Composer 安装命令:
composer require aegisora/is-array-rule
包简介
Rule-based is array validation in Aegisora ecosystem
README 文档
README
Is Array Rule provides a simple and strict array type validation for the Aegisora ecosystem.
The package is built on top of aegisora/rule-contract and follows its validation architecture, ensuring predictable and safe behavior.
✨ Features
- 🔹 Minimalistic implementation with no extra dependencies
- 🔹 Strict array validation using
is_array - 🔹 Fully compatible with Aegisora validation pipeline
- 🔹 Clear
Context → Resultflow - 🔹 No raw booleans — only structured
Result - 🔹 Safe execution via base
Ruleabstraction - 🔹 Convenient static factory method (
create) - 🔹 Lightweight and predictable behavior
📦 Installation
composer require aegisora/is-array-rule
🚀 Core Concept
This package performs array validation:
- accepts a value via
Context - checks whether the value is an array
- returns a standardized
Result
Supported values:
[] ['foo', 'bar'] ['key' => 'value']
Unsupported values:
null true 123 'string' new stdClass()
🏗️ Basic Usage
✅ Validate array value
use Aegisora\Rules\IsArrayRule; use Aegisora\RuleContract\Models\Context; $result = IsArrayRule::create()->validate( Context::create(['name' => 'John']) ); if ($result->isValid()) { // value is array } else { // value is not array }
❌ Invalid value example
use Aegisora\Rules\IsArrayRule; use Aegisora\RuleContract\Models\Context; $result = IsArrayRule::create()->validate( Context::create('not-array') ); if ($result->isValid()) { // will not happen } else { // validation failed }
🧩 Factory Method
IsArrayRule::create();
Creates a new instance of IsArrayRule.
⚠️ Validation Rules
Validation internally uses PHP native function:
is_array($value)
The rule returns:
- valid
Result→ if value is array - invalid
Result→ if value is not array
No exceptions are thrown for unsupported types.
🏛️ Architecture
This package relies on aegisora/rule-contract.
Validation flow:
validate()is calledContextis passedexecuteValidate()is executedis_array()check is performed- A
Resultis returned
All logic is encapsulated within the base Rule abstraction.
⚖️ License
This package is open-source and licensed under the MIT License. See the LICENSE for details.
🌱 Contributing
Contributions are welcome and greatly appreciated!. See the CONTRIBUTING for details.
🌟 Support
If you find this project useful, please consider giving it a star on GitHub!
It helps the project grow and motivates further development.
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 9
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-05-11