将数组数据从PHP传递到Javascript

将数组数据从PHP传递到Javascript,javascript,php,arrays,Javascript,Php,Arrays,我正在将MySQL结果中的数组提取到数组变量中。我可以在下面的javascript中成功地使用一个简单的php回显行来获取第一个$row元素,但我想使用json_encode一次获取整个数组 当我这样做并尝试将javascript变量设置为第一个数组元素时,出现了一些错误,甚至单个var方法也停止工作 <?php . . . while($row = $result->fetch_array(MYSQLI_NUM)) { $row1 = $row[0];

我正在将MySQL结果中的数组提取到数组变量中。我可以在下面的javascript中成功地使用一个简单的php回显行来获取第一个$row元素,但我想使用json_encode一次获取整个数组

当我这样做并尝试将javascript变量设置为第一个数组元素时,出现了一些错误,甚至单个var方法也停止工作

<?php
.
.
.
    while($row = $result->fetch_array(MYSQLI_NUM)) {
        $row1 = $row[0];
    }       
?>

<script type="text/javascript">  
    var RowArray = <?php echo json_encode($row); ?>;
    var RA1 = RowArray[0];
    window.alert(RA1);

    var Row1 = '<?php echo $row1; ?>';      
    window.alert(Row1);     
</script>  

var RowArray=;
var RA1=行数组[0];
窗口警报(RA1);
var Row1='';
窗口警报(第1行);

制作一个包含所有记录的数组:

$rows = [];
while ($row = $result->fetch_array(MYSQLI_NUM))
{
   // do custom modifications to $row if neededed
   $rows[] = $row; // push to array
}
或者只是:

$rows = $result->fetch_all(MYSQLI_NUM);

然后使用
json\u encode()
$rows

创建一个包含所有记录的数组:

$rows = [];
while ($row = $result->fetch_array(MYSQLI_NUM))
{
   // do custom modifications to $row if neededed
   $rows[] = $row; // push to array
}
或者只是:

$rows = $result->fetch_all(MYSQLI_NUM);

然后使用
json\u encode()
$rows

如何
$allRows=$result->fetch\u all(MYSQLI\u NUM)?如果不是,数据是什么样子的?您希望它在JavaScript中如何表示?如果任何行包含非UTF8特殊字符。json_encode可以返回null。并将导致变量RowArray=上的JS失败;(因为PHP在转换为字符串时不回显null,但不回显任何内容)(错误将是意外的;)fetch_都工作正常。我不太清楚我的fetch\u数组失败的原因。可能是因为web服务器如何处理循环和脚本计时?但我很高兴有一个切实可行的解决办法。非常感谢。怎么样
$allRows=$result->fetch\u all(MYSQLI\u NUM)?如果不是,数据是什么样子的?您希望它在JavaScript中如何表示?如果任何行包含非UTF8特殊字符。json_encode可以返回null。并将导致变量RowArray=上的JS失败;(因为PHP在转换为字符串时不回显null,但不回显任何内容)(错误将是意外的;)fetch_都工作正常。我不太清楚我的fetch\u数组失败的原因。可能是因为web服务器如何处理循环和脚本计时?但我很高兴有一个切实可行的解决办法。非常感谢。