承接 eappointment/mellon 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

eappointment/mellon

Composer 安装命令:

composer require eappointment/mellon

包简介

Validator for parameters and validation helper

README 文档

README

Link to main repository: https://gitlab.com/eappointment/mellon/

Mellon is a validator library using the filter-functions offered by PHP. It is written for PHP micro frameworks which do not have a validation library by themself.

  'Speak, friend, and enter'

Usage

In flat PHP, a simple validation would look like this:

$name = filter_input(INPUT_GET, 'name', FILTER_SANITIZE_FULL_SPECIAL_CHARS);

Using Mellon, it looks like this:

$validator = new \BO\Mellon\Validator($_GET);
$name = $validator->getParameter('name')->isString()->getValue();

With a shortcut for all $_REQUEST variables, you could use:

use \BO\Mellon\Validator;

$name = Validator::param('name')
    ->isString()
    ->isSmallerThan(32)
    ->setDefault('John Doe')
    ->getValue();

To ensure, that nobody uses the superglobals in your project, take a look at the controversial rule in the PHP MD Config File.

Error Messages

Mellon allow to add error messages for custom validations:

$size = Validator::param('size')
    ->isMatchOf('/(px|em|%)/', 'Do include some valid units like px, em or % for a size')
    ->isFreeOf('/important/', 'The css statement "!important" is not allowed')
    ->isBiggerThan(2, 'The size should contain some value')
    ->isSmallerThan(10, 'You should enter a size, no short story expected')
    ->setDefault('100%');

if ($size->hasFailed()) {
    throw new Exception("Error in size param: " . implode(';', $size->getMessages()));
}
else {
    echo $size->getValue();
}

For the usage of validation in template engines, mellon support an output as array:

$sizeParam = $size->getStatus();
   /**
     * Contains the following keys:
     *     failed - True if validation has failed
     *     messages - A list of error messages in case the validation has failed
     *     value - Value, might be the default value if validation has failed
     */

eappointment/mellon 适用场景与选型建议

eappointment/mellon 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 36.8k 次下载、GitHub Stars 达 1, 最近一次更新时间为 2022 年 01 月 14 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 eappointment/mellon 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 eappointment/mellon 我们能提供哪些服务?
定制开发 / 二次开发

基于 eappointment/mellon 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 36.8k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 3
  • 依赖项目数: 4
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-01-14