定制 stiction/dragon 二次开发

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

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

stiction/dragon

Composer 安装命令:

composer require stiction/dragon

包简介

tools related to Chinese

README 文档

README

Build Status

中文相关的一些工具类

Installation

composer require stiction/dragon

Examples

姓名

<?php

require 'vendor/autoload.php';

use Stiction\Dragon\Name;

$name = new Name();

// 随机姓氏
var_dump($name->randomSurname());
// 随机名字(不含姓氏)
var_dump($name->randomFirstName());
// 随机全名
var_dump($name->randomFullName());

格言

<?php

require 'vendor/autoload.php';

use Stiction\Dragon\Inspiring;

$inspiring = new Inspiring();

// string 一条格言
var_dump($inspiring->one());
// string[] 所有格言
var_dump($inspiring->all());

行政区划

<?php

require 'vendor/autoload.php';

use Stiction\Dragon\Region;

$region = new Region();

// 所有区划
var_dump($region->all());
// 省级区划
var_dump($region->provinces());
// 查找指定区划
/*
array(3) {
  ["id"]=>
  string(6) "440300"
  ["name"]=>
  string(9) "深圳市"
  ["parent_id"]=>
  string(6) "440000"
}
*/
var_dump($region->find('440300'));
// 查找子区划
var_dump($region->subregions('440300'));

身份证

<?php

require 'vendor/autoload.php';

use Stiction\Dragon\IdentityParser;

$parser = new IdentityParser();

// 计算校验位,大写表示
// string(1) "X"
var_dump($parser->calcCheckChar('36112319820726197'));

// 解析身份证信息,分别为身份证完整号码、行政区划码、生日、序号、校验位、性别(F|M)
/*
array(6) {
  ["whole"]=>
  string(18) "36112319820726197X"
  ["region"]=>
  string(6) "361123"
  ["birthday"]=>
  string(10) "1982-07-26"
  ["ordinal"]=>
  string(3) "197"
  ["check"]=>
  string(1) "X"
  ["gender"]=>
  string(1) "M"
}
*/
var_dump($parser->parse('36112319820726197x'));
// bool(false)
var_dump($parser->parse('361123198207261976'));

银行卡

<?php

require 'vendor/autoload.php';

use Stiction\Dragon\Bank;

$bank = new Bank();

// 计算银行卡校验位数字
// int(7)
var_dump($bank->calcCheckNumber('622841407026350141'));

农历

支持公历范围:1900-01-31(含) - 2101-01-28(含)
支持农历范围:1900年正月初一(含) - 2100年腊月廿九(含)

<?php

require 'vendor/autoload.php';

use Stiction\Dragon\LunarDate;

/******** 公历时间戳转农历 ********/
$timestamp = 0;
$date = new LunarDate($timestamp);
/*
array(4) {
  ["year"]=>
  int(1969) 1969年
  ["month"]=>
  int(11) 冬月
  ["day"]=>
  int(24) 廿四
  ["leap"]=>
  bool(false) 不是闰月
}
*/
var_dump($date->info());

/******** 农历转公历时间戳 ********/
$timestamp = LunarDate::toSolar(1969, 11, 24);
$date = new \DateTime('@' . $timestamp);
$date->setTimeZone(new DateTimeZone('Asia/Shanghai'));
// string(10) "1970-01-01"
var_dump($date->format('Y-m-d'));

// 闰月
$timestamp = LunarDate::toSolar(2020, 4, 5, true);
$date = new \DateTime('@' . $timestamp);
$date->setTimeZone(new DateTimeZone('Asia/Shanghai'));
// string(10) "2020-05-27"
var_dump($date->format('Y-m-d'));

其他

<?php

require 'vendor/autoload.php';

use Stiction\Dragon\Misc;

$misc = new Misc();

// 检查手机号码
// bool(true)
var_dump($misc->checkMobile('13800138000'));

stiction/dragon 适用场景与选型建议

stiction/dragon 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 76 次下载、GitHub Stars 达 2, 最近一次更新时间为 2019 年 05 月 25 日, 在 PHP 生态内属于活跃度较高的组件。

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

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

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

BUG 修复 & 性能优化

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

项目外包 & 长期维护

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

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

统计信息

  • 总下载量: 76
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-05-25