我有以下几行代码从我的数据库中提取一些数据。我需要引用数据的一些特定内容,但我遇到了重复数组键的问题。由于项目的复杂性,我不想使用SQL语句对数据进行排序。
检查数组的指针后,生成以下内容。 ([0] => 0)数组([0] => 0)数组([0] => 0)数组([0] => 0)数组([0] => 0)数组([0] => 0)数组([0] => 0)数组([0] => 0)
印刷阵列的样本: ([0] =&gt; 3371450.18)数组([0] =&gt; 54459051.95)数组([0] =&gt; 210382.52)数组([0] =&gt; 6860440.01)数组([0] =&gt; 13131358.12)< / p>
由于所有数组键都是重复的,因此某些PHP数组函数(如array_sum,array_max)等对数组起作用并且它变得非常令人沮丧。
我想知道这是不是因为while循环。 while循环中的数组指针是否总是重复。 `
if(isset($_SESSION['sess']) && !empty(isset($_SESSION['sess']))){
echo "Session id is ".$_SESSION['sess']." exist";
$currentSession = $_SESSION['sess'];
$sql = "SELECT * FROM `loanbook` WHERE LoanBookSessionId='$currentSession'";
$result = mysqli_query($dbs,$sql);
$teamselection = "SELECT * FROM `Teams`";
$teamresult = mysqli_query($dbs,$teamselection);
while($row = mysqli_fetch_array($result)){
?>
<?php
$Sn[] = $row['Id'];
$Team = $row['Team'];
$CounterClass = $row['CounterPartyClassification'];
$GrossL = $row['GrossLoan'];
$CollType = $row['CollateralType'];
print_r(array_keys(array($GrossL)));
print_r((array($GrossL)));
}
?>`
答案 0 :(得分:0)
看起来好像你有一个2d数组,其中每个内部数组都包含一个代表浮点数的字符串。
将每个内部数组映射到已解析的浮点值应提供所需的数据结构。
<?php
$x = [
["1.43434"],
["1.43434"],
];
echo json_encode($x) . "\n";
echo json_encode(array_map(function($t) {
return floatval($t[0]);
}, $x));
输出
▶ php test.php
[["1.43434"],["1.43434"]]
[1.43434,1.43434]