Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-没有为线图生成正确的数组_Php_Arrays - Fatal编程技术网

PHP-没有为线图生成正确的数组

PHP-没有为线图生成正确的数组,php,arrays,Php,Arrays,我有一个脚本来生成一些数据,这些数据被拉入一个折线图。我需要为每个公司生成一行带有$teamCount变量的代码。现在,脚本只创建一个数组,并将每个公司的所有行粘贴到一个数组中,这实质上是创建逐年数据(它不应该这样做) 我不确定如何执行此操作,无论是为循环嵌套一个foreach还是另一个 以下是脚本: $finance = array( array( 'key' => $companyName, 'values'

我有一个脚本来生成一些数据,这些数据被拉入一个折线图。我需要为每个公司生成一行带有
$teamCount
变量的代码。现在,脚本只创建一个数组,并将每个公司的所有行粘贴到一个数组中,这实质上是创建逐年数据(它不应该这样做)

我不确定如何执行此操作,无论是为循环嵌套一个
foreach
还是另一个

以下是脚本:

      $finance = array(
        array(
            'key' => $companyName,
            'values' => array()
        )
      );

      for ($i = 0; $i < $teamCount; ++$i) {                 
          $count = $i + 1;
          $companyName = 'Company ' . $count;
          $finance[0]['values'][] = array('x' => $count, 'y' => 25000000);
        }

        $insertdata['finance'] = $finance;  
我不确定如何实现的期望输出是:

array (
  0 => 
  array (
    'key' => 'Company 1',
    'values' => 
    array (
      0 => 
      array (
        'x' => 1,
        'y' => 25000000,
      ),
    ),
  ),
  1 => 
  array (
    'key' => 'Company 2',
    'values' => 
    array (
      0 => 
      array (
        'x' => 1,
        'y' => 25000000,
      ),      
    ),
  ),
)

它只创建了一个数组,因为您每次都在循环中推动
$finance[0]
,而不是推动
$finance
本身。您正在设置
$companname
变量,但没有将其放在数组中的任何位置

$finance = array();
for ($i = 1; $i <= $teamcount; $i++) {
    $finance[] = array(
        'key' => 'Company ' . $i,
        'values' => array(
            array('x' => 1, 'y' => 2500000)
        )
    );
}

$insertdata['finance'] = $finance;
$finance=array();
对于($i=1;$i‘公司’。$i,
'值'=>数组(
数组('x'=>1,'y'=>2500000)
)
);
}
$insertdata['finance']=$finance;

是的,现在我明白了,这很容易。谢谢你的帮助。有个小问题,
在公司名称行上的
$i
引起问题后,应为
$finance = array();
for ($i = 1; $i <= $teamcount; $i++) {
    $finance[] = array(
        'key' => 'Company ' . $i,
        'values' => array(
            array('x' => 1, 'y' => 2500000)
        )
    );
}

$insertdata['finance'] = $finance;