Передать значение массива в URL, http_build_query Не дает требуемых результатов - PullRequest
0 голосов
/ 03 февраля 2020

Я ищу скрипт, который может кодировать значения массива для ключей. Мне нужно передать значение массива, а не массив ключей для нескольких значений.

http_build_query будет выдавать вывод, как показано ниже:

&viewColumns%5B0%5D=date&viewColumns%5B1%5D=adv_responses

Мне нужен вывод, как показано ниже:

&viewColumns=%5B%22date%22%2C%22adv_responses%22%5D

Пожалуйста, дайте мне знать, если есть какие-либо решения, код выглядит так:

$data= array();
$data['group']  = 'cpcReportsAdvertiser';
$data['dimensions']  = array('date');
$data['viewColumns']  = array('date','adv_responses');
// $data['measures']  = ["adv_responses"];
$date = array('between',array('2019-07-01','2019-07-31'));
$dates = new stdClass; 
$dates->date= $date;
$data['filters']  = $dates;
$data['attributes']  = [];

$sort = new stdClass; 
$sort->column = 'adv_impressions'; 
$sort->direction = 'asc'; 
$data['sort']  = $sort;
$data['limit']  = 50;

$url = sprintf("%s?%s", $url, http_build_query($data));

print_r($url);exit;

1 Ответ

0 голосов
/ 03 февраля 2020

Чтобы получить viewColumns=%5B%22date%22%2C%22adv_responses%22%5D&, который декодирует до viewColumns=["date","adv_responses"], вам нужно json_encode это:

$data['viewColumns']  = json_encode(array('date','adv_responses'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...