定制 saritasa/php-common 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

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

saritasa/php-common

最新稳定版本:1.2.2

Composer 安装命令:

composer require saritasa/php-common

包简介

Saritasa classes, that can be universally used in any application

README 文档

README

PHP Unit PHP CodeSniffer CodeCov Release PHPv Downloads

Common Saritasa classes and helpers, that can be used universally in any application. This package should not depend on any framework or library.

Usage

Install the saritasa/php-common package:

$ composer require saritasa/php-common

Available classes

Enum

Alternative for SplEnum class. Designed to be container for repeatedly used set of constants.

Example:

class Gender extends Saritasa\Enum
{
    const MALE = 'Male';
    const FEMALE = 'Female';
}

then somewere in code:

$allGenders = Gender::getConstants();
$gender = new Gender($stringValue); // Will throw UnexpectedValueException on unknown value;
function getGenderDependentValue(Gender $gender) { ... }

Dto

A simple DTO, that can convert associative array to strong typed class with fields and back:

/**
 * @property-read string $name Person full name
 * @property-read string $address Street address
 * @property-read string $city City
 * @property-read string $state State
 * @property-read string $zip Zip Code
 */
class Address extends Dto
{
    protected $name;
    protected $address;
    protected $city;
    protected $state;
    protected $zip;
}
...
$address = new Address($request->all()) // Read only Address fields from HTTP Request
$address->toArray() // Convert to assotiative array
$address->toJson()  // Serialize to JSON format

RegExp

Reusable wrapper for preg_match;

Example:

$isEmail = new RegExp('/\w+@\w+\.\w+/');
$result = $isEmail('test@it');

Exception Definitions

ConfigurationException

Throw this, if you find erroneous configuration.

Example:

$payPalKey = config('services.paypal_key');
if (!$payPalKey) {
    throw new ConfigurationException("PayPal key is not configured");
}

PagingException

Throw this, if you implement paging and encounter an unrecoverable problem

PaymentException

Throw this, if you implement payment service or wrapper around payment service and encounter an unrecoverable problem.

Contributing

Requirements

This package must:

  • Do not depend on any framework or library
  • Do not depend on other Saritasa packages
  • Do not register any providers
  1. Create fork, checkout it
  2. Develop locally as usual. Code must follow PSR-1, PSR-2 - run PHP_CodeSniffer to ensure, that code follows style guides
  3. Cover added functionality with unit tests and run PHPUnit to make sure, that all tests pass
  4. Update README.md to describe new or changed functionality
  5. Add changes description to CHANGES.md file. Use Semantic Versioning convention to determine next version number.
  6. When ready, create pull request

Make shortcuts

If you have GNU Make installed, you can use following shortcuts:

  • make cs (instead of php vendor/bin/phpcs) - run static code analysis with PHP_CodeSniffer to check code style
  • make csfix (instead of php vendor/bin/phpcbf) - fix code style violations with PHP_CodeSniffer automatically, where possible (ex. PSR-2 code formatting violations)
  • make test (instead of php vendor/bin/phpunit) - run tests with PHPUnit
  • make install - instead of composer install
  • make all or just make without parameters - invokes described above install, cs, test tasks sequentially - project will be assembled, checked with linter and tested with one single command

Resources

统计信息

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

GitHub 信息

  • Stars: 0
  • Watchers: 9
  • Forks: 4
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 未知

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固