Test.php 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Titan 名字就是密码
  5. * Date: 2019/7/15
  6. * Time: 18:29
  7. */
  8. namespace app\index\controller;
  9. use think\Controller;
  10. class Test extends Controller
  11. {
  12. public function index()
  13. {
  14. // $params = ['request'=>'login','login'=>666666,'password'=>'kobe19879151'];
  15. $params = [
  16. "a[BatchRegister]"=>"BatchRegister",
  17. "user"=>[
  18. "name"=>"candys",
  19. "email"=>"a@b",
  20. "group"=>"demo\\2k001",
  21. "leverage" =>"50",
  22. "password" => "Ra123456",
  23. "confirm_password"=>"Ra123456",
  24. "invest_password"=>"Ra12345678",
  25. "city"=>"china",
  26. "zipcode"=>"a",
  27. "state"=>"a",
  28. "country" =>"Afganistan",
  29. "address" =>"china",
  30. "phone"=>"18477272535",
  31. "phone_password"=>"18477272535"
  32. ]
  33. ];
  34. $data = $this->http('http://192.168.5.199:988/',$params,"POST");
  35. var_dump($data);
  36. }
  37. public function http($url, $params, $method = 'GET', $header = array(), $timeout = 5)
  38. {
  39. // POST 提交方式的传入 $set_params 必须是字符串形式
  40. $opts = array(
  41. CURLOPT_TIMEOUT => $timeout,
  42. CURLOPT_RETURNTRANSFER => 1,
  43. CURLOPT_SSL_VERIFYPEER => false,
  44. CURLOPT_SSL_VERIFYHOST => false,
  45. CURLOPT_HTTPHEADER => $header
  46. );
  47. /* 根据请求类型设置特定参数 */
  48. switch (strtoupper($method)) {
  49. case 'GET':
  50. $opts[CURLOPT_URL] = $url . '?' . http_build_query($params);
  51. break;
  52. case 'POST':
  53. $params = http_build_query($params);
  54. $opts[CURLOPT_URL] = $url;
  55. $opts[CURLOPT_POST] = 1;
  56. $opts[CURLOPT_POSTFIELDS] = $params;
  57. break;
  58. case 'DELETE':
  59. $opts[CURLOPT_URL] = $url;
  60. $opts[CURLOPT_HTTPHEADER] = array("X-HTTP-Method-Override: DELETE");
  61. $opts[CURLOPT_CUSTOMREQUEST] = 'DELETE';
  62. $opts[CURLOPT_POSTFIELDS] = $params;
  63. break;
  64. case 'PUT':
  65. $opts[CURLOPT_URL] = $url;
  66. $opts[CURLOPT_POST] = 0;
  67. $opts[CURLOPT_CUSTOMREQUEST] = 'PUT';
  68. $opts[CURLOPT_POSTFIELDS] = $params;
  69. break;
  70. default:
  71. throw new Exception('不支持的请求方式!');
  72. }
  73. /* 初始化并执行curl请求 */
  74. $ch = curl_init();
  75. curl_setopt_array($ch, $opts);
  76. $data = curl_exec($ch);
  77. $error = curl_error($ch);
  78. return $data;
  79. }
  80. }