如何使用键和值动态构建 PHP 数组
How to dynamically build a PHP array with keys and values
在项目中使用 PHPGraphlib。
下面向图表添加数据。数组值将是 y 轴值。
$graph->addData(array(100,12,43,342,9));
如果数组有键,键将是对应的 x 轴值。
$data = array("1" => 100, "2" => 12, "3" => 43, "4" => 342, "5" => 9);
我需要动态构建 $data 数组,从键值“1”开始,并从用逗号分隔的变量中赋值。值的数量可以改变。例如:
$values="100,12,43,342,9,22,33";
我可以将数据分解成一个数组
$splits = explode(",",$values);
现在我有了值的数量。那么我如何编写一个循环来将这些值分配给增量键,以便 $data 数组本质上是:
$data = array("1" => 100, "2" => 12, "3" => 43, "4" => 342, "5" => 9, "6" => 22, "7"=> 33);
像这样的?
<?php
$values="100,12,43,342,9,22,33";
$splits = explode(",",$values);
$data = array();
for ($x = 0; $x < count($splits); $x++) {
$data[$x+1] = intval($splits[$x],10);
}
var_dump($data);
这应该将数组作为一个索引开始。
<?php
$values = "100,12,43,342,9,22,33";
$splits = explode(",", $values);
$data = array_combine(range(1, count($splits)), array_values($splits));
$data = array_map('intval', $data); // converts values to int
var_dump($data);
在项目中使用 PHPGraphlib。
下面向图表添加数据。数组值将是 y 轴值。
$graph->addData(array(100,12,43,342,9));
如果数组有键,键将是对应的 x 轴值。
$data = array("1" => 100, "2" => 12, "3" => 43, "4" => 342, "5" => 9);
我需要动态构建 $data 数组,从键值“1”开始,并从用逗号分隔的变量中赋值。值的数量可以改变。例如:
$values="100,12,43,342,9,22,33";
我可以将数据分解成一个数组
$splits = explode(",",$values);
现在我有了值的数量。那么我如何编写一个循环来将这些值分配给增量键,以便 $data 数组本质上是:
$data = array("1" => 100, "2" => 12, "3" => 43, "4" => 342, "5" => 9, "6" => 22, "7"=> 33);
像这样的?
<?php
$values="100,12,43,342,9,22,33";
$splits = explode(",",$values);
$data = array();
for ($x = 0; $x < count($splits); $x++) {
$data[$x+1] = intval($splits[$x],10);
}
var_dump($data);
这应该将数组作为一个索引开始。
<?php
$values = "100,12,43,342,9,22,33";
$splits = explode(",", $values);
$data = array_combine(range(1, count($splits)), array_values($splits));
$data = array_map('intval', $data); // converts values to int
var_dump($data);