Проблема с предупреждением: rawurlencode () ожидает, что параметр 1 будет строкой, массив приведен вPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Проблема с предупреждением: rawurlencode () ожидает, что параметр 1 будет строкой, массив приведен в

Сообщение Anonymous »

Мой код для запроса API имеет некоторую ошибку, я уже искал, но все еще не знаю, как решить проблему с моим текущим кодом. Мой код работает по адресу https://sa789.online/aaatest.php
function Signature_Genarate($Params,$privateKey = false)
{
if(!empty($Params['signature']))
{
unset($Params['signature']);
}
ksort($Params);

if(isset($_GET['debug']) && $_GET['debug'] ==1)
echo implode("", $Params) . $privateKey;

$Params['signature'] = sha1(implode("", $Params) . $privateKey);
return $Params;
}

function Signature_Verify($Params , $privateKey = false)
{
if(!is_array($Params) || !$privateKey)
{
return false;
}

$CSignature = '';
if(!empty($Params['signature']))
{
$CSignature = $Params['signature'];
unset($Params['signature']);
}

ksort($Params);
$Signature = sha1(implode("", $Params) . $privateKey);
return ($Signature === $CSignature) ? true : false;
}

$key = '9afdsfas1971adsfafewrfewqed7e360b6fads3b';
$url = 'http://ag-webgame-staging.winroad168.co ... r_register';
$params = [];
$params['agid'] = 'EA003';
$params['username'] = 'abc123456'; // min 6 max 20
$params['password'] = '1q2w3e'; // min 6
$params['lang'] = 'chs';
$signature = Signature_Genarate($params,$key);
$params['lang'] = $signature;

$paramsUrl = '';
if ($params)
foreach ($params as $key => $value)
$paramsUrl .= (!empty($paramsUrl) ? "&" : "") . rawurlencode($key) . "=" . rawurlencode($value);

$url = $url . '?' . $paramsUrl;

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$body = curl_exec($ch);
curl_close($ch);

$data = json_decode($body,TRUE);

echo "
";
var_dump($data);
echo "";
< /code>
И я получил это < /p>
Warning: rawurlencode() expects parameter 1 to be string, array given in /home/kwplyhje/public_html/aaatest.php on line 50
< /code>
Я новый код и учебный код, поэтому, пожалуйста, помогите мне руководство по исправлению моего кода. Большое спасибо.


Подробнее здесь: https://stackoverflow.com/questions/635 ... -array-giv
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»