【问题标题】:Update my php array in javascript function在 javascript 函数中更新我的 php 数组
【发布时间】:2013-10-23 07:04:28
【问题描述】:

我想在 javascript 函数中更新或添加新的 key=>value 到我的 php 数组。

分页是ajax,页面没有重新加载。

实际上,我正在接收上传到我的服务器上的文本文件中的数据。我解析该文件并获得有限数量的记录,当我单击 NEXT 时,服务器上又上传了一个文件,我再次解析它并显示数据。所以,我希望所有数据都存储在该页面上的 php 数组中,这样下次我转到 PREVIOUS 记录时,它不会再次解析文件,只显示数组中的数据。

//php array name is $call_data

var file_data = <?php $content = @file_get_contents("text file name"); 
$content = rawurldecode($content); 
$new_call_data = json_decode( $content ); 

foreach ($new_call_data->CALLS as $key => $val) { 
    $call_data['CALLS'][] = $val; $file_rec_start++;
} 
echo json_encode( $call_data ); ?>;

【问题讨论】:

    标签: javascript php arrays


    【解决方案1】:

    我没有看到您将“内容”部分拆分为和平的部分,因此您必须重新加载页面,是它丢失了还是这部分在 JavaScript 中?

    你也可以缩小你的来源:

    <?php
    $my_contents = file_get_contents('myfile.json');
    $my_contents = rawurldecode($my_contents);
    $my_array    = json_decode($content);
    $my_json     = json_encode(array_values($my_array->CALLS));
    ?>
    var file_data = <?=$my_json?>;
    

    您可以在 javascript 中遍历数组,而无需刷新页面。 你可以使用

    var results_per_page  = 25
    var page_available = Math.ceil(file_data.length / results_per_page);
    var page = 0;
    var page_array = file_data.slice((page * results_per_page), ((page+1)*results_per_page));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-21
      • 1970-01-01
      相关资源
      最近更新 更多