这是一个PHP常用字符串操作、数组操作、常规验证、业务常用转化的组件,里面提供了很多业务中能使用到的场景。
composer require easytool/php-handle
包含的话则返回true,不包含的话则返回false。
<?php
require "vendor/autoload.php";
$obj = new \Easytool\PhpHandle\StringHandle();
$res1 = $obj->isContain('hello world', 'llo');
$res2 = $obj->isContain('hello world', 'haha');
var_dump($res1);
var_dump($res2);
输出:
bool(true)
bool(false)
全部是中文则返回true,否则返回false。
<?php
require "vendor/autoload.php";
$obj = new \Easytool\PhpHandle\StringHandle();
$res1 = $obj->isAllContainChinese('我爱你中国');
$res2 = $obj->isAllContainChinese('我爱你,中国');
var_dump($res1);
var_dump($res2);
输出:
bool(true)
bool(false)
包含中文则返回true,不包含中文则返回false。
<?php
require "vendor/autoload.php";
$obj = new \Easytool\PhpHandle\StringHandle();
$res1 = $obj->isContainChinese('hello');
$res2 = $obj->isContainChinese('hello啊');
var_dump($res1);
var_dump($res2);
输出:
bool(false)
bool(true)
合法则返回true,不合法则返回false。
<?php
require "vendor/autoload.php";
$obj = new \Easytool\PhpHandle\StringHandle();
$res1 = $obj->isLegalString('hello_123');
$res2 = $obj->isLegalString('hello_123_%#');
var_dump($res1);
var_dump($res2);
输出:
bool(true)
bool(false)
<?php
require "vendor/autoload.php";
$obj = new \Easytool\PhpHandle\StringHandle();
$res1 = $obj->getRandStrByLength(10);
$res2 = $obj->getRandStrByLength(8);
var_dump($res1);
var_dump($res2);
输出:
string(10) "9d7dd5a08c"
string(8) "9a94a08d"
<?php
require "vendor/autoload.php";
$obj = new \Easytool\PhpHandle\StringHandle();
$res1 = $obj->getRemoveHeadZero('008812');
$res2 = $obj->getRemoveHeadZero('00101');
var_dump($res1);
var_dump($res2);
输出:
string(4) "8812"
string(3) "101"
示例:
<?php
require "vendor/autoload.php";
$obj = new \Easytool\PhpHandle\ArrayHandle();
$towArr = [
'0' => [
'name' => '沪上阿姨',
'price' => '15',
'course' => [
'语文','数学','英语'
]
],
'1' => [
'name' => '阿水大杯茶',
'price' => '12',
'course' => [
'地理','历史','政治'
]
],
'2' => [
'name' => '蜜雪冰城',
'price' => '10',
'course' => [
'生物','化学','物理'
]
],
'3' => [
'name' => '张亮麻辣烫',
'price' => '9',
'course' => [
'体育','音乐','美术'
]
],
];
$res1 = $obj->shuffleDoubleArray($towArr);
print_r($res1);
输出:
Array
(
[1] => Array
(
[name] => 阿水大杯茶
[price] => 12
[course] => Array
(
[0] => 地理
[1] => 历史
[2] => 政治
)
)
[0] => Array
(
[name] => 沪上阿姨
[price] => 15
[course] => Array
(
[0] => 语文
[1] => 数学
[2] => 英语
)
)
[2] => Array
(
[name] => 蜜雪冰城
[price] => 10
[course] => Array
(
[0] => 生物
[1] => 化学
[2] => 物理
)
)
[3] => Array
(
[name] => 张亮麻辣烫
[price] => 9
[course] => Array
(
[0] => 体育
[1] => 音乐
[2] => 美术
)
)
)
PS:这个操作只会随机调整多维数组顺序,原有的 key 不变,如果想要重新整合 key(从0开始排列)就 array_value 一下即可。
示例:
<?php
require "vendor/autoload.php";
$obj = new \Easytool\PhpHandle\ArrayHandle();
$towArr = [
'0' => [
'name' => '沪上阿姨',
'price' => '15',
'course' => [
'语文','数学','英语'
]
],
'1' => [
'name' => '阿水大杯茶',
'price' => '12',
'course' => [
'地理','历史','政治'
]
],
'2' => [
'name' => '蜜雪冰城',
'price' => '10',
'course' => [
'生物','化学','物理'
]
],
'3' => [
'name' => '张亮麻辣烫',
'price' => '9',
'course' => [
'体育','音乐','美术'
]
],
];
$res1 = $obj->arraySort($towArr, 'price', SORT_DESC);
print_r($res1);
输出:
Array
(
[0] => Array
(
[name] => 沪上阿姨
[price] => 15
[course] => Array
(
[0] => 语文
[1] => 数学
[2] => 英语
)
)
[1] => Array
(
[name] => 阿水大杯茶
[price] => 12
[course] => Array
(
[0] => 地理
[1] => 历史
[2] => 政治
)
)
[2] => Array
(
[name] => 蜜雪冰城
[price] => 10
[course] => Array
(
[0] => 生物
[1] => 化学
[2] => 物理
)
)
[3] => Array
(
[name] => 张亮麻辣烫
[price] => 9
[course] => Array
(
[0] => 体育
[1] => 音乐
[2] => 美术
)
)
)
示例:
<?php
require "vendor/autoload.php";
$obj = new \Easytool\PhpHandle\ArrayHandle();
$towArr = [
'0' => [
'name' => '沪上阿姨',
'price' => '15',
'course' => [
'语文','数学','英语'
]
],
'1' => [
'name' => '阿水大杯茶',
'price' => '12',
'course' => [
'地理','历史','政治'
]
],
'2' => [
'name' => '蜜雪冰城',
'price' => '10',
'course' => [
'生物','化学','物理'
]
],
'3' => [
'name' => '张亮麻辣烫',
'price' => '9',
'course' => [
'体育','音乐','美术'
]
],
];
$res1 = $obj->getArrFieldSum($towArr, 'price');
print_r($res1);
输出:
46
女性返回1,男性返回2
<?php
require "vendor/autoload.php";
$convertObj = new \Easytool\PhpHandle\ConvertHandle();
//$stringObj = new \Easytool\PhpHandle\StringHandle();
//$arrayObj = new \Easytool\PhpHandle\ArrayHandle();
//$validateObj = new \Easytool\PhpHandle\ValidateHandle();
print_r($convertObj->getSexByIdCard('372922198712078787'));
输出:
1
<?php
require "vendor/autoload.php";
$convertObj = new \Easytool\PhpHandle\ConvertHandle();
//$stringObj = new \Easytool\PhpHandle\StringHandle();
//$arrayObj = new \Easytool\PhpHandle\ArrayHandle();
//$validateObj = new \Easytool\PhpHandle\ValidateHandle();
print_r($convertObj->getSXbyIdCard('372922198712078787'));
输出:
兔