人生路上难免曲折,生活中亦难免有磨难尽管征途漫漫,但也要一路放歌,潇洒奔向明天。
——《人民日报》
人生路上难免曲折,生活中亦难免有磨难尽管征途漫漫,但也要一路放歌,潇洒奔向明天。
——《人民日报》
// 给定的JSON数据配置项
$jsonData = '{"23:00-05:00":"14","05:00-23:00":"10"}';
// 将JSON字符串解码为关联数组
$config = json_decode($jsonData, true);
// 传入的任意时间段
$curr_time = time();
// 将当前时间转换为小时和分钟的格式
$curr_hour = date('H', $curr_time);
$curr_minute = date('i', $curr_time);
// 计算对应时间有多少秒
$curr_second = ($curr_hour * 3600) + ($curr_minute * 60);
// 判断给定时间段所属的配置项
$value = null;
foreach ($config as $key => $val) {
// 将时间范围拆分为开始时间和结束时间
list($begTime, $endTime) = explode('-', $key);
// 将开始时间和结束时间的小时和分钟分别拆分
list($begHour, $begMinute) = explode(':', $begTime);
list($endHour, $endMinute) = explode(':', $endTime);
// 计算对应时间有多少秒
$beg_second = ($begHour * 3600) + ($begMinute * 60);
$end_second = ($endHour * 3600) + ($endMinute * 60);
// 验证时间是否跨夜
if ($beg_second > $end_second){
if ($curr_second >= $beg_second || $curr_second < $end_second){
$value = $val;
}
}else{
if ($curr_second >= $beg_second && $curr_second < $end_second){
$value = $val;
}
}
}
echo $value;
官方文档
https://www.php.net/manual/zh/class.mongodb-bson-binary
final public MongoDB\BSON\Binary::jsonSerialize(): mixed
jsonSerialize处理binary数据
读取如
$result = $result->jsonSerialize();
echo $result['$binary'];
echo $result['$type'];
保存数据
$binary = '666';
$type = 0;
$result = new Binary($binary, $type);
// $binary存储会自动转base64格式
亲身经历,官方文档坑
THPHP6,正常导入
composer require alipaysdk/easysdk
直接上内容,官方验签
//1. 设置参数(全局只需设置一次)Factory::setOptions(getOptions());
$result = Factory::payment()->common()->verifySign($_POST);
然而不好意思出现错误无法通过;主要原因fund_bill_list数据JSON字符串传递时序列化问题
// 请求数据处理
$data = request()->post();
$data = http_build_query($data);
$data = explode('&', $data);
$new_data = [];
foreach ($data as $key=>$val){
$rows = explode('=', $val);
$new_data[$rows[0]] = urldecode($rows[1]);
}
if (!empty($new_data['fund_bill_list'])){
$new_data['fund_bill_list'] = str_replace('"', '"', $new_data['fund_bill_list']);
$json = json_decode($new_data['fund_bill_list'], true);
if (json_last_error() !== JSON_ERROR_NONE) {
$this->consoleLog('Failed to decode JSON: ' . json_last_error_msg());
}
$new_data['fund_bill_list'] = json_encode($json);
}
// 才能去验证
$result = Factory::payment()->common()->verifySign($new_data);
如对你有帮助记得点赞哦~
主要原因,系统变量需要和环境变量一致