【问题标题】:How to get the specific data from an array, shown as below, in PHP?如何在 PHP 中从数组中获取特定数据,如下所示?
【发布时间】:2018-01-12 15:08:27
【问题描述】:

Here you would see an image displaying an array

我正在使用 jquery 从现有表中发送数据,以便通过 mysql 将数据保存在其上。但是,我无法回显或显示图像上显示的数组中的任何特定数据。

这是我用来从表中获取数据的代码。

var output = [],
row    = 0;
$('table').find('tr').each(function (index, obj) {
    output.push([]);
    var TDs = $(this).children();
    $.each(TDs, function (i, o) {
        output[row].push($(this).text());
    });
    row++;
});

我把它变成了一个对象。

var jObject={};
for(i in output)
{
    jObject[i] = output[i];
}

然后,我将其转换为 JSON 对象并将其发送到 GetGastos.php

jObject= JSON.stringify(jObject);
$.ajax({
        type:'POST',
        cache:false,
        url:"GetGastos.php",
        data:{jObject: jObject},
        success:function(server){
          alert(server);
        }
});

这是我在我的 php 中得到的,它会打印如图所示的数组。

<?php
$data = json_decode($_POST['jObject'], true);
    
foreach($data as $d){
   print_r($d);    
}
  
?>

(编辑) 如何仅从第二行获取值,该值显示为具有以下值的第二个数组:之前显示的图像中的 NULL、2、7 和 985?以及将单个值放入变量中,例如,在 $FirstVar 中获得 NULL,在 $SecondVar 中获得 2,在 $ThirdVar 中获得 7,在 $FourthVar 中获得 $985?

【问题讨论】:

  • 那么你的问题是什么?
  • 如何获取具体数据,例如只获取第二行,包括NULL、2、7、985。

标签: javascript php jquery arrays


【解决方案1】:

您必须使用:not():first-child 选择器来排除第一个&lt;tr&gt;

$('table').find('tr:not(:first-child)')...

或者

$('table tr:not(:first-child)')...

【讨论】:

  • 感谢您的帮助,它起作用了.....我怎样才能将各个值放入变量中,例如,在 $FirstVar 中获取 NULL,在 $SecondVar 中获取 2,在 $ThirdVar 中获取 7 , 和 $FourthVar 中的 985?
  • 我认为$data是一个数值数组,你可以通过索引访问它的元素,$data[0]获取第一个元素,$data[1]获取第二个元素,...跨度>
  • 考虑接受我的回答给未来的读者,这里是how you can accept an answer
  • 它可以工作,但是,当我在表中添加第三行并回显$data[2] 时,我会得到 concat 值而不是单独获取它们......例如,我有第二行 NULL , 2, 7, 985:然后我得到了第三行,其中包括以下内容:NULL、3、16、976。如果我打印数据 [2],我得到的结果是 716。我想将每个值分开或将它们存储在另一个数组中,以便我可以访问它以进一步保存选项。
  • 看不懂,请多解释
猜你喜欢
  • 1970-01-01
  • 2017-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-28
相关资源
最近更新 更多