propaysystems / utilities
一组辅助工具和特性
Requires
- php: ^8.1
- bjeavons/zxcvbn-php: ^1.0
- illuminate/contracts: ^9.0|^10.0
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.8
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^8.8
- pestphp/pest: ^2.20
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- dev-main
- v1.0.12
- v1.0.11
- 1.0.10
- 1.0.9
- v1.0.8
- v1.0.7
- v1.0.6
- v1.0.5
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- v0.0.1
- dev-development
- dev-FullDateBirthdayCalculation
- dev-dependabot/github_actions/dependabot/fetch-metadata-2.0.0
- dev-dependabot/github_actions/ramsey/composer-install-3
- dev-dependabot/github_actions/aglipanci/laravel-pint-action-2.3.1
This package is auto-updated.
Last update: 2024-09-25 06:56:09 UTC
README
Propay Utilities
一组辅助工具和特性,用于我们每天以及所有系统中常用的常用函数。
需求
PHP 8.1+
Laravel 9+
安装
您可以通过composer安装此包
composer require propaysystems/utilities
您可以使用以下命令发布配置文件
php artisan vendor:publish --tag="utilities-config"
特性
辅助函数
-- 数据库辅助函数 --
清除指定表中的所有数据并重置自动增量
DatabaseHelper::resetTable($table);
-- 日期辅助函数 --
这将返回您传入的月份编号的月份名称。缩写将返回月份的简称。
DateHelper::getMonthName($number, $abbreviation = false);
获取南非当前财务年度
DateHelper::getFiscalYear();
获取时间
DateHelper::getTime($string);
-- 文件辅助函数 --
这将返回您传入的字节的易读格式
FileHelper::formatBytes($bytes, $precision = 2);
-- Http 辅助函数 --
获取请求当前分配的公共IP地址
HttpHelper::getIp();
获取请求当前的用户代理
HttpHelper::getUserAgent();
获取系统的主机名/域名。您可以通过指定full来返回http://部分
HttpHelper::hostname($full = false);
获取当前系统的子域名
HttpHelper::subdomain();
-- 身份证号辅助函数 --
从出生日期生成用于测试的假身份证号
IdNumberHelper::generateIdNumber($dateOfBirt, int $male = 1);
生成用于测试的完整假身份证号
IdNumberHelper::generateFakeNumber($dateOfBirt, int $male = 1);
从身份证号中获取性别
IdNumberHelper::getGenderCode($idNumber);
从身份证号中获取出生日期
IdNumberHelper::getBirthDate($idNumber);
从身份证号中获取年龄
IdNumberHelper::getAgeFromIdNumber($idNumber);
验证身份证号
IdNumberHelper::getAgeFromIdNumber($attribute, $value, $parameters);
-- 数字辅助函数 --
将生成介于1和100,000之间的随机整数
NumberHelper::randomInt();
将获取两个数字之间的百分比差异
NumberHelper::getPercentageDifference(int $last, int $current);
这将相应地格式化数字,例如100,000将变为100.00k
NumberHelper::numberFormat(int $number);
这将组合国家前缀,例如27,与手机号码,例如0821231234,并返回27821231234
NumberHelper::combineCellPrefix($prefix, $number)
-- 路由辅助函数 --
检查字符串是否在当前路由名称中
RouteHelper::currentRouteContains($string);
-- SMS 辅助函数 --
从字符串中获取短信消息的数量
SmsHelper::multipart_count($str);
-- Spatie 媒体辅助函数 --
与Spatie媒体包管理文件相关的辅助函数
https://spatie.be/docs/laravel-medialibrary/v10/introduction
-- 字符串辅助函数 --
这将获取每个单词的首字母并将它们大写,然后只返回首字母/字母
StringHelper::initials($str, bool $upperCase = true);
这将大写每个单词的首字母并返回字符串
StringHelper::capitaliseFirstChar($string);
删除所有空白和特殊字符
StringHelper::clean($string, string $delimiter = '-', bool $toLower = false, bool $removeSpecialChars = true);
这将生成随机密码
StringHelper::generatePassword($length = 15, $count = 1, $characters = 'lower_case,upper_case,numbers,special_symbols');
这将使用相关字符遮蔽字符串
StringHelper::mask($string, string $maskingCharacter = '*', int $padLeft = 4, int $padRight = 4));
将数据库列名转换为易读格式
StringHelper::dbColumnHumanReadable($string_array);
将数据库列名转换为易读关系
StringHelper::dbColumnRelation($string_array);
返回所有特殊字符的列表
StringHelper::specialCharacters();
特性
将这些特性包含在任何类中
-- 活动辅助特性 --
这是一个辅助函数,用于Spatie活动日志包
https://spatie.be/docs/laravel-activitylog/v4/introduction
use ActivityHelper; $thia->log(string $channel, string $description, $preformedOn = null, $causedBy = null, array $properties = []);
-- TableHelper 特性 --
这是一个辅助函数,用于WireUI通知,可以从任何Livewire类中轻松触发通知。
use AlertHelper; $this->alert($title, $text...); $this->alertUpdated(); $this->alertCreated(); $this->alertDeleted(); etc
-- Dropdown Schema 特性 --
在您的数据库模型中使用此特性,而不是多次编写样板代码
use DropdownSchema; $this->table('categories');
-- 复合主键特性 --
在数据库模型中使用该特性能访问复合主键
use HasCompositePrimaryKey; $this->find($ids, $columns = ['*']); $this->setKeysForSaveQuery($query);
---- 密码强度特性 ----
使用此特性实现密码强度进度条。
use PasswordStrength;
---- 密码验证特性 ----
使用此特性进行标准密码验证。
use PasswordValidationRules;
---- 保存为大写特性 ----
这将使所有模型数据转换为大写
use SaveToUpper;
---- 空字符串设置为空值特性 ----
这将强制所有空字符串变为空值而不是空字符串
use SetNullOnEmpty; $this->setNullOnEmpty($input);
---- 切换触发器特性 ----
这将切换相关数据库表中触发器的启用或禁用
use TriggerHelper; $this->switchDatabaseTrigger($enable = true, $table = null, $trigger = null, string $connection = 'sqlsrv');
-- TableHelper 特性 --
这是livewire powergrid包的辅助工具,用于分页。[前往网站](https://livewire-powergrid.com/)
use TableHelper;
测试
运行pest测试
composer test
运行phpstan代码分析
composer analyse
变更日志
请参阅变更日志以获取有关最近更改的更多信息。
贡献
请参阅贡献指南以获取详细信息。
安全漏洞
请查阅我们的安全策略了解如何报告安全漏洞。
致谢
许可
MIT许可(MIT)。请参阅许可文件以获取更多信息。