数组,获取值并在变量中设置

时间:2015-02-07 07:37:44

标签: javascript php arrays

我有一组动态呈现的JavaScript数组。我想逐个从数组中获取数据,并希望将该值赋给变量。

这是我的JavaScript代码

var count;

for (count = 0; count <= employee_yearly_sales.length; ++count) {
  var d2 = employee_yearly_sales[count];
  console.log(d2);
}

var d1 = [[id, roundoff]]; // Here value come dynamically 
var d2 = [[id, roundoff]]; // Here value come dynamically 

  var data1 = [
  {label: created_by,  data: d1} // Here value come dynamically for title
  {label: created_by,  data: d2} // Here value come dynamically for title
];

数组输出

    [Object]
    0: Object
        created_by: "1"
        id: "9"
        roundoff: "0.00"
        updated_at: "2014-11-13 10:33:46"
[Object]
    0: Object
        created_by: "2"
        id: "106"
        roundoff: "0.00"
        updated_at: "2014-11-13 10:33:46"

enter image description here

如何为变量添加值?感谢。

这是PHP代码,数据来自

public function EmployeeYearlySales() {

$data = array();

$res = $this->db->query("SELECT id, first_name, last_name FROM employees");
$result = $res->fetchAll(MDB2_FETCHMODE_ASSOC);

foreach ($result as $item => $items) {
$order = $this->db->query("SELECT distinct id, SUM(roundoff) AS         roundoff,updated_at,created_by FROM orders WHERE created_by = " . $items['id']);
$order_result = $order->fetchAll(MDB2_FETCHMODE_ASSOC);
$data[] = $order_result;
}

var_dump($data);
//exit;

if ($result) {
  return $result;
  echo json_encode($result);
}
else
  return false;
}

1 个答案:

答案 0 :(得分:0)

我认为这就是你想要的。它从检索到的SQL数据中的数据动态构建数组。在for lus中,它使用created_by数据推送标签值,并使用dataid设置包含数组roundoff属性。我从你的问题中扣除了这一点。我希望这就是你要找的东西。

var count;
var data = [];

for (count = 0; count <= employee_yearly_sales.length; ++count) {
  var dataObj = employee_yearly_sales[count];

  data.push( {label: dataObj[0],  data: [dataObj[1], dataObj[2]]} );// Here value come dynamically for title
}

console.log(data);
This will create:
[Array]
0: [Object]
    label: 1
    data: [Array]
        0: 9
        1: "0.00"
1: [Object]
    label: 2
    data: [Array]
        0: 106
        1: "0.00"