Я пытаюсь вставить массив в двумерный массив. Но что бы я ни старался - вставляя его как массив, как текст, array_push,... - он не будет делать то, что я хочу.
У меня есть эта часть кода, которая описывает содержание и внешний вид графика:
$data_ = array( "chart" => array("renderTo" => "container", "type" => "spline",
"zoomType" => "xy"),
"tooltip" => array("shared" => true, "crosshairs" => true),
"series" => $data);
Теперь, основываясь на параметре, переданном через вызов JSON, может быть показано, что граница графика будет отображаться (по умолчанию "нет границы").
if ($_GET["border"] == true)
{
$border = array("borderWidth" => 1, "borderRadius" => 5, "borderColor" => "#666", "shadow" => true);
}
Теперь, как я могу получить $ границу в " диаграмме " -part в $ data_?
Я попробовал что-то вроде этого (определив границу $ перед $ data_):
$data_ = array( "chart" => array("renderTo" => "container", "type" => "spline",
"zoomType" => "xy", $border),
"tooltip" => array("shared" => true, "crosshairs" => true),
"series" => $data);
а вот так:
$data_["chart"][] = $border;
(плюс многие другие). Но это всегда приводит - очевидно и понятно - в $ border вставляется как массив в "диаграмме" и не имеет параметров на одном уровне, то есть:
Я получаю это:
$data_ = array( "chart" => array("renderTo" => "container", "type" => "spline",
"zoomType" => "xy",
array("borderWidth" => 1, "borderRadius" => 5, "borderColor" => "#666", "shadow" => true)),
вместо этого:
$data_ = array( "chart" => array("renderTo" => "container", "type" => "spline",
"zoomType" => "xy",
"borderWidth" => 1, "borderRadius" => 5, "borderColor" => "#666", "shadow" => true),
Я думаю, решение довольно просто, но, к сожалению, мне не известно. Большое спасибо за любые подсказки!
Я бы попытался с $data_['chart'] = array_merge($data_['chart'], $border);
Пример:
$a = array("chart" => array(1, 2, 3));
$b = array(4, 5, 6);
$a['chart'] = array_merge($a['chart'], $b);
var_dump($a['chart']);
Вывод:
array(6) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
[3]=>
int(4)
[4]=>
int(5)
[5]=>
int(6)
}