1

我想在 php 中生成 javascript 循环,这给了我语法错误。这就是我想要的

var d1 = [
          [(new Date("01/06/2013")). getTime(),4],
          [(new Date("01/07/2013")). getTime(),0],
         ];

我想从 db 使它动态化。这是我尝试过的

var d1 = [
<?php
    while($rw = $oAppl->row($res))
    {
        $php_var = $rw['list_date_rent'];
        $php_var2 = $rw['rntval'];
?>            
    var php_var = "<?php echo $php_var; ?>";
    var php_var2 = "<?php echo $php_var2; ?>";
    [(new Date("+'"php_var"'+")). getTime(),php_var2],
<?php
    }
?>
];
4

3 回答 3

0

为什么不直接在 PHP 中构建数组,然后将json_encode其输出到 javascript 中呢?

$results = array();
while ($rw = $oAppl->row($res)) {
    $results[] = array(
        'new Date("' . $rw['list_date_rent'] , '").getTime()',
        $rw['rntval']
    );
}

?>
var d1 = <?php echo json_encode($results); ?>;
于 2013-04-11T10:28:25.013 回答
0

您不想要尾随逗号,您需要回显完整的内容或将回显分成两部分 - 这可能更具可读性

var d1 = [];
  <?php
    $first = true;
    while($rw = $oAppl->row($res)) {     
      if (!$first) echo ","; else $first=false; ?>
      d1.push([ 
        new Date("<?php echo $rw['list_date_rent']; ?>").getTime(),
        <?php echo $rw['rntval']?>
      ]);
   <?php } ?>  
于 2013-04-11T10:19:23.743 回答
0

你为什么使用 javascript 变量?

var d1 = [
<?php while($rw = $oAppl->row($res)) { ?>
  [(new Date("<?php echo $rw['list_date_rent']; ?>")). getTime(),<?php echo $rw['rntval']; ?>],
<?php } ?>
     ];
于 2013-04-11T10:16:53.363 回答