为什么PHP用零和null替换从Oracle查询的一些值?

为什么PHP用零和null替换从Oracle查询的一些值?,php,oracle,oci8,Php,Oracle,Oci8,我在一个PHP文件中有一个查询,它使用“oci8”发送到Oracle数据库 问题是当我返回结果时,在SQL developer中执行查询时通常看到的大多数值在PHP中被替换为0或null值 我试着使用oci\u set\u预取($parseQuery,100000000)只是为了确定,但这并没有起作用 我甚至在数据库中创建了一个视图并从中进行查询,但仍然存在相同的问题 有什么想法吗 php代码: <?php include("db_connection.php"); $qu

我在一个PHP文件中有一个查询,它使用“oci8”发送到Oracle数据库

问题是当我返回结果时,在SQL developer中执行查询时通常看到的大多数值在PHP中被替换为
0
null

我试着使用
oci\u set\u预取($parseQuery,100000000)只是为了确定,但这并没有起作用

我甚至在数据库中创建了一个视图并从中进行查询,但仍然存在相同的问题

有什么想法吗

php代码

<?php
  include("db_connection.php");   

  $query = "SQL query...";    

  $parseQuery = oci_parse($connection, $query);

  oci_execute($parseQuery);
  oci_set_prefetch($parseQuery, 100000000);
  $sqlResultJson = array();    

  while ($row = oci_fetch_array($parseQuery, OCI_ASSOC+OCI_RETURN_NULLS)) {
    array_push($sqlResultJson, $row);
  }

  $json = json_encode($sqlResultJson);

  echo $json;    
?>
[{
    "NIMETUS": "Lepingu maht",
    "A2013": "145333",
    "JAANUAR": "16095",
    "VEEBRUAR": "16095",
    "MARTS": "16095",
    "APRILL": "16095",
    "MAI": "16095",
    "JUUNI": "16095",
    "JUULI": "16095",
    "AUGUST": "16095",
    "SEPTEMBER": "16095",
    "OKTOOBER": "16095",
    "DETSEMBER": "16095",
    "KOKKU_2014": "193138",
    "KOKKU": "338471"
  },
  {
    "NIMETUS": "Planeeritud",
    "A2013": "154531",
    "JAANUAR": null,
    "VEEBRUAR": null,
    "MARTS": null,
    "APRILL": null,
    "MAI": null,
    "JUUNI": null,
    "JUULI": null,
    "AUGUST": "14801",
    "SEPTEMBER": "17304",
    "OKTOOBER": null,
    "DETSEMBER": null,
    "KOKKU_2014": "199594",
    "KOKKU": "354125"
  },
  {
    "NIMETUS": "Tegelik",
    "A2013": "161533",
    "JAANUAR": "17505",
    "VEEBRUAR": "17294",
    "MARTS": "876",
    "APRILL": "0",
    "MAI": "0",
    "JUUNI": "0",
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "35675",
    "KOKKU": "197208"
  },
  {
    "NIMETUS": "Aeguvad kokku lepitud",
    "A2013": "0",
    "JAANUAR": null,
    "VEEBRUAR": null,
    "MARTS": null,
    "APRILL": null,
    "MAI": null,
    "JUUNI": null,
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "39765"
  },
  {
    "NIMETUS": "Aeguvad paigaldamata",
    "A2013": "0",
    "JAANUAR": null,
    "VEEBRUAR": null,
    "MARTS": null,
    "APRILL": null,
    "MAI": null,
    "JUUNI": null,
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "14360"
  },
  {
    "NIMETUS": "Aeguvad jooksvalt planeerimata",
    "A2013": "0",
    "JAANUAR": null,
    "VEEBRUAR": null,
    "MARTS": null,
    "APRILL": null,
    "MAI": null,
    "JUUNI": null,
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "8811"
  }]
 [{
    "NIMETUS": "Lepingu maht",
    "A2013": "145333",
    "JAANUAR": "16095",
    "VEEBRUAR": "16095",
    "MARTS": "16095",
    "APRILL": "16095",
    "MAI": "16095",
    "JUUNI": "16095",
    "JUULI": "16095",
    "AUGUST": "16095",
    "SEPTEMBER": "16095",
    "OKTOOBER": "16095",
    "DETSEMBER": "16095",
    "KOKKU_2014": "193138",
    "KOKKU": "338471"
  },
  {
    "NIMETUS": "Planeeritud",
    "A2013": "154531",
    "JAANUAR": "23399",
    "VEEBRUAR": "17194",
    "MARTS": "15539",
    "APRILL": "17013",
    "MAI": "17276",
    "JUUNI": "15941",
    "JUULI": "13638",
    "AUGUST": "14801",
    "SEPTEMBER": "17304",
    "OKTOOBER": "17337",
    "DETSEMBER": "13226",
    "KOKKU_2014": "199594",
    "KOKKU": "354125"
  },
  {
    "NIMETUS": "Tegelik",
    "A2013": "161533",
    "JAANUAR": "17505",
    "VEEBRUAR": "17294",
    "MARTS": "876",
    "APRILL": "0",
    "MAI": "0",
    "JUUNI": "0",
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "35675",
    "KOKKU": "197208"
  },
  {
    "NIMETUS": "Aeguvad kokku lepitud",
    "A2013": "0",
    "JAANUAR": "10431",
    "VEEBRUAR": "9584",
    "MARTS": "9817",
    "APRILL": "2655",
    "MAI": "2594",
    "JUUNI": "4684",
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "39765"
  },
  {
    "NIMETUS": "Aeguvad paigaldamata",
    "A2013": "0",
    "JAANUAR": "468",
    "VEEBRUAR": "889",
    "MARTS": "3886",
    "APRILL": "2264",
    "MAI": "2477",
    "JUUNI": "4376",
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "14360"
  },
  {
    "NIMETUS": "Aeguvad jooksvalt planeerimata",
    "A2013": "0",
    "JAANUAR": "0",
    "VEEBRUAR": "5",
    "MARTS": "1032",
    "APRILL": "1159",
    "MAI": "2386",
    "JUUNI": "4229",
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "8811"
  }]
但应该是这样的(我是通过在base中创建一个新表并使用实际查询的结果得到的)

<?php
  include("db_connection.php");   

  $query = "SQL query...";    

  $parseQuery = oci_parse($connection, $query);

  oci_execute($parseQuery);
  oci_set_prefetch($parseQuery, 100000000);
  $sqlResultJson = array();    

  while ($row = oci_fetch_array($parseQuery, OCI_ASSOC+OCI_RETURN_NULLS)) {
    array_push($sqlResultJson, $row);
  }

  $json = json_encode($sqlResultJson);

  echo $json;    
?>
[{
    "NIMETUS": "Lepingu maht",
    "A2013": "145333",
    "JAANUAR": "16095",
    "VEEBRUAR": "16095",
    "MARTS": "16095",
    "APRILL": "16095",
    "MAI": "16095",
    "JUUNI": "16095",
    "JUULI": "16095",
    "AUGUST": "16095",
    "SEPTEMBER": "16095",
    "OKTOOBER": "16095",
    "DETSEMBER": "16095",
    "KOKKU_2014": "193138",
    "KOKKU": "338471"
  },
  {
    "NIMETUS": "Planeeritud",
    "A2013": "154531",
    "JAANUAR": null,
    "VEEBRUAR": null,
    "MARTS": null,
    "APRILL": null,
    "MAI": null,
    "JUUNI": null,
    "JUULI": null,
    "AUGUST": "14801",
    "SEPTEMBER": "17304",
    "OKTOOBER": null,
    "DETSEMBER": null,
    "KOKKU_2014": "199594",
    "KOKKU": "354125"
  },
  {
    "NIMETUS": "Tegelik",
    "A2013": "161533",
    "JAANUAR": "17505",
    "VEEBRUAR": "17294",
    "MARTS": "876",
    "APRILL": "0",
    "MAI": "0",
    "JUUNI": "0",
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "35675",
    "KOKKU": "197208"
  },
  {
    "NIMETUS": "Aeguvad kokku lepitud",
    "A2013": "0",
    "JAANUAR": null,
    "VEEBRUAR": null,
    "MARTS": null,
    "APRILL": null,
    "MAI": null,
    "JUUNI": null,
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "39765"
  },
  {
    "NIMETUS": "Aeguvad paigaldamata",
    "A2013": "0",
    "JAANUAR": null,
    "VEEBRUAR": null,
    "MARTS": null,
    "APRILL": null,
    "MAI": null,
    "JUUNI": null,
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "14360"
  },
  {
    "NIMETUS": "Aeguvad jooksvalt planeerimata",
    "A2013": "0",
    "JAANUAR": null,
    "VEEBRUAR": null,
    "MARTS": null,
    "APRILL": null,
    "MAI": null,
    "JUUNI": null,
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "8811"
  }]
 [{
    "NIMETUS": "Lepingu maht",
    "A2013": "145333",
    "JAANUAR": "16095",
    "VEEBRUAR": "16095",
    "MARTS": "16095",
    "APRILL": "16095",
    "MAI": "16095",
    "JUUNI": "16095",
    "JUULI": "16095",
    "AUGUST": "16095",
    "SEPTEMBER": "16095",
    "OKTOOBER": "16095",
    "DETSEMBER": "16095",
    "KOKKU_2014": "193138",
    "KOKKU": "338471"
  },
  {
    "NIMETUS": "Planeeritud",
    "A2013": "154531",
    "JAANUAR": "23399",
    "VEEBRUAR": "17194",
    "MARTS": "15539",
    "APRILL": "17013",
    "MAI": "17276",
    "JUUNI": "15941",
    "JUULI": "13638",
    "AUGUST": "14801",
    "SEPTEMBER": "17304",
    "OKTOOBER": "17337",
    "DETSEMBER": "13226",
    "KOKKU_2014": "199594",
    "KOKKU": "354125"
  },
  {
    "NIMETUS": "Tegelik",
    "A2013": "161533",
    "JAANUAR": "17505",
    "VEEBRUAR": "17294",
    "MARTS": "876",
    "APRILL": "0",
    "MAI": "0",
    "JUUNI": "0",
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "35675",
    "KOKKU": "197208"
  },
  {
    "NIMETUS": "Aeguvad kokku lepitud",
    "A2013": "0",
    "JAANUAR": "10431",
    "VEEBRUAR": "9584",
    "MARTS": "9817",
    "APRILL": "2655",
    "MAI": "2594",
    "JUUNI": "4684",
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "39765"
  },
  {
    "NIMETUS": "Aeguvad paigaldamata",
    "A2013": "0",
    "JAANUAR": "468",
    "VEEBRUAR": "889",
    "MARTS": "3886",
    "APRILL": "2264",
    "MAI": "2477",
    "JUUNI": "4376",
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "14360"
  },
  {
    "NIMETUS": "Aeguvad jooksvalt planeerimata",
    "A2013": "0",
    "JAANUAR": "0",
    "VEEBRUAR": "5",
    "MARTS": "1032",
    "APRILL": "1159",
    "MAI": "2386",
    "JUUNI": "4229",
    "JUULI": "0",
    "AUGUST": "0",
    "SEPTEMBER": "0",
    "OKTOOBER": "0",
    "DETSEMBER": "0",
    "KOKKU_2014": "0",
    "KOKKU": "8811"
  }]

您能提供示例数据(尤其是包含奇怪数据的行)和用于获取它的代码吗?如果没有
json\u encode
,它是相同的吗?不,仍然是相同的。。。刚刚尝试从数组中内爆某个对象:$string=introde(“,”,$sqlResultJson[1]);echo$字符串;没有
json\u编码
是的,我明白了。在while循环之后,我写了:$string=introde(“,”,$sqlResultJson[1]);echo$字符串;仍然得到空值