| Server IP : 156.238.232.47 / Your IP : 216.73.216.150 Web Server : nginx/1.25.3 System : Linux C202504152095410 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : www ( 1000) PHP Version : 8.3.25 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /www/data/wwwroot/2025_10_31_03/app/service/ |
Upload File : |
<?php
// +----------------------------------------------------------------------
// | ShopXO 国内领先企业级B2C免费开源电商系统
// +----------------------------------------------------------------------
// | Copyright (c) 2011~2099 http://shopxo.net All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( https://opensource.org/licenses/mit-license.php )
// +----------------------------------------------------------------------
// | Author: Devil
// +----------------------------------------------------------------------
namespace app\service;
/**
* api服务层
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2021-06-22
* @desc description
*/
class ApiService
{
/**
* api数据统一返回
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2021-07-20
* @desc description
* @param [array] $data [api统一返回]
*/
public static function ApiDataReturn($data)
{
// api统一返回钩子
$hook_name = 'plugins_service_api_data_return';
MyEventTrigger($hook_name,
[
'hook_name' => $hook_name,
'is_backend' => true,
'data' => &$data,
]);
return json($data);
}
/**
* token生成
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @date 2021-02-26
* @desc description
* @param [int] $data_id [数据id]
* @param [int|string] $rand [随机数]
*/
public static function CreatedUserToken($data_id, $rand = '')
{
// 生成规则
$data = [];
$rules = MyC('common_token_created_rules');
if(!empty($rules) && is_array($rules))
{
// 用户ip
if(in_array(0, $rules))
{
$data[] = GetClientIP();
}
// 设备信息
if(in_array(1, $rules))
{
$arr = ['USER', 'HTTP_USER_AGENT', 'HTTP_HOST', 'SERVER_SOFTWARE', 'GATEWAY_INTERFACE', 'REQUEST_SCHEME', 'SERVER_PROTOCOL'];
foreach($arr as $v)
{
if(isset($_SERVER[$v]))
{
$data[] = $_SERVER[$v];
}
}
}
// 客户端
if(in_array(2, $rules))
{
$data[] = APPLICATION_CLIENT_TYPE;
}
// 系统类型
if(in_array(3, $rules))
{
$data[] = SYSTEM_TYPE;
}
// 随机数或密码盐
if(in_array(4, $rules))
{
if(empty($rand))
{
$rand = time().GetNumberCode();
}
$data[] = $rand;
}
}
return md5(md5((empty($data) ? '' : md5(implode('', $data))).md5($data_id)));
}
}
?>