functions.php 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Administrator
  5. * Date: 2019/7/16
  6. * Time: 17:46
  7. */
  8. //保留小数位数
  9. function floatPointDigit($data, $long = 2)
  10. {
  11. $long = intval($long);
  12. $for1 = "%." . $long . "f";
  13. $for2 = "%." . ($long + 1) . "f";
  14. return sprintf($for1, substr(sprintf($for2, $data), 0, -1));
  15. }
  16. /**
  17. * UUID 生成
  18. */
  19. function UUID()
  20. {
  21. $prefix = '';
  22. $uuid = '';
  23. $str = md5(uniqid(mt_rand(), true));
  24. $uuid = substr($str, 0, 8) . '-';
  25. $uuid .= substr($str, 8, 4) . '-';
  26. $uuid .= substr($str, 12, 4) . '-';
  27. $uuid .= substr($str, 16, 4) . '-';
  28. $uuid .= substr($str, 20, 12);
  29. return $prefix . $uuid;
  30. }
  31. //把订单转为带字符串的包裹的字符
  32. function orders_to_str($order_array)
  33. {
  34. return array_map(function ($i) {
  35. return strval("'$i'");
  36. }, $order_array);
  37. }
  38. //把订单转为带字符串的包裹的字符
  39. function orders_to_strval($order_array)
  40. {
  41. return array_map(function ($i) {
  42. return strval($i);
  43. }, $order_array);
  44. }
  45. /**
  46. * POST请求https接口返回内容
  47. * @param string $url [请求的URL地址]
  48. * @param string $post [请求的参数]
  49. * @return string
  50. */
  51. function post_curls($url, $post, $isPost = 1)
  52. {
  53. $curl = curl_init(); // 启动一个CURL会话
  54. curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址
  55. curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
  56. curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); // 从证书中检查SSL加密算法是否存在
  57. curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器
  58. curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转
  59. curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer
  60. curl_setopt($curl, CURLOPT_POST, $isPost); // 发送一个常规的Post请求
  61. curl_setopt($curl, CURLOPT_POSTFIELDS, $post); // Post提交的数据包
  62. curl_setopt($curl, CURLOPT_TIMEOUT, 5); // 设置超时限制防止死循环
  63. curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容
  64. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回
  65. $res = curl_exec($curl); // 执行操作
  66. curl_close($curl); // 关闭CURL会话
  67. return $res; // 返回数据,json格式
  68. }