soliphp / helpers
Soli PHP helpers.
v1.1.0
2019-03-25 13:25 UTC
Requires
- php: >=5.5.0
- ext-ctype: *
- ext-json: *
- ext-mbstring: *
README
常用的 PHP「辅助」函数。
Table of Contents
字符串
camelize
camelize
函数将给定字符串转换为 驼峰格式
:
echo camelize('coco_bongo'); // CocoBongo
echo camelize('co_co-bon_go', '-'); // Co_coBon_go
echo camelize('co_co-bon_go', '_-'); // CoCoBonGo
uncamelize
uncamelize
函数将给定的字符串转换为 蛇形格式
:
echo uncamelize('CocoBongo'); // coco_bongo
echo uncamelize('CocoBongo', '-'); // coco-bongo
lower
lower
函数将给定的字符串转换为 小写
:
echo lower('HELLO'); // hello
upper
upper
函数将给定的字符串转换为 大写
:
echo upper('hello'); // HELLO
starts_with
starts_with
函数判断给定的字符串的开头
是否是指定值:
echo starts_with('Hello', 'He'); // true
echo starts_with('Hello', 'he'); // false
ends_with
ends_with
函数判断给定的字符串结尾
是否是指定的内容:
echo ends_with('Hello', 'llo'); // true
echo ends_with('Hello', 'LLO'); // false
contains
contains
函数判断字符串是否包含
指定的值:
echo contains('Hello', 'ell'); // true
echo contains('Hello', 'hll'); // false
echo contains('Hello', ['hll', 'ell']); // true
echo contains('Hello', ['hll', '']); // false
sanitize
sanitize
使用对应过滤标识进行数据清洗,如:
echo sanitize('!100a019.01a', 'int'); // 10001901
echo sanitize('{"data":123}', 'string'); // {"data":123}
echo sanitize('some(one)@exa\\mple.com', 'email'); // someone@example.com
可用的过滤标识有:
JSON
is_json
echo is_json('{"data":123}'); // true
echo is_json('{data:123}'); // false
文件目录
mkdir_p
mkdir_p
创建所有需要创建的父级目录:
mkdir_p('/path/a/b/c');
mkdir_p('/path/a/b/c', 0777);
环境变量
env
env
获取环境变量,允许指定默认值:
// 当没有 MYSQL_HOST 这个环境变量时,返回默认的 localhost
env('MYSQL_HOST', 'localhost');
env_file
env_file
获取环境配置文件名,默认为 .env
,如果定义了 APP_ENV
环境变量,则返回对应的环境文件名。
如,创建 test.php,文件内容为:
<?php
include __DIR__ . "/src/helpers.php";
echo env_file();
默认执行 php test.php
,将输出 .env
:
php test.php
// 输出
.env
如果执行 APP_ENV=prod php test.php
,从命令行指定环境变量 APP_ENV=prod
将输出 .env.prod
:
APP_ENV=prod php test.php
// 输出
.env.prod
可配合 phpdotenv 加载对应环境配置文件的内容,假如环境配置文件放在项目根目录 BASE_PATH 下:
(new Dotenv(BASE_PATH, env_file()))->load();
加载后便可以使用 env
方法获取每一个环境变量的值,便于分离环境配置和项目代码。