为了账号安全,请及时绑定邮箱和手机立即绑定

在 PHP 中循环遍历 stdClass 对象

在 PHP 中循环遍历 stdClass 对象

PHP
慕田峪7331174 2021-10-22 10:19:56
我有一个名为 $result 的数组,其中包含查询结果。加载视图时,我将变量作为参数传递。我正在尝试访问 [Document_No] [Line_No][Description] [Type] [Quantity] [Unit_of_Measure] 中的值并将它们显示给用户。我试图遍历数组并不断收到此错误。不能使用 stdClass 类型的对象作为数组$result 的值Array(    [0] => stdClass Object        (            [Key] => 40;3P4RAwJ7/0kATQBQAC0AMAAwADAAMgAAAACHIE4=7;38242640;            [Document_No] => IMP-0002            [Line_No] => 20000            [Description] => Pay People            [Type] => TRAVEL            [Quantity] => 40            [Unit_of_Measure] => DAY            [Unit_Price] => 10            [Amount] => 400            [Current_Budget] => 2019/2020            [Account_Type] => G_L_Account            [Account_No] => 2210301            [Budgeted_Amount_GoK] => 0            [Available_Amount] => 37701.41            [Actual_Spent] => 0            [Global_Dimension_1_Code_Name] => TUBERCULOSIS            [Global_Dimension_2_Code_Name] => OTHER PSM COSTS - TB/HIV            [Global_Dimension_3_Code_Name] => OTHER PSM COSTS            [Global_Dimension_4_Code_Name] => TB/HIV            [Global_Dimension_5_Code_Name] => ENGAGING ALL CARE PROVIDERS (MDR-TB)            [Global_Dimension_6_Code_Name] => NATIONAL TREASURY OF THE REPUBLIC OF KENYA            [Global_Dimension_1_Code] => TB            [Global_Dimension_2_Code] => TB13.1.7            [Global_Dimension_3_Code] => TB7.7            [Global_Dimension_4_Code] => TBMODT-003            [Global_Dimension_5_Code] => TBITVT.0010            [Global_Dimension_6_Code] => TNT            [Local_Travel] =>             [International_Travel] =>         )        ))预期成绩我希望这些值出现在字段上,但我不断收到此错误消息无法使用 stdClass 类型的对象作为数组
查看完整描述

2 回答

?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

无需使用此循环foreach ($lines as $line)。你可以直接使用$lines->Description


查看完整回答
反对 回复 2021-10-22
?
浮云间

TA贡献1829条经验 获得超4个赞

你有一个对象数组。每个对象都有可以引用的属性。


因此,对于数组$result,您可以遍历数组。


foreach($result as $row) {}

然而,每一行都是一个对象;对象的属性被引用如下:$row->Document_No


因此,如果您想使用字段 [Document_No] [Line_No][Description] [Type] [Quantity] 打印表格,您可以这样做:


<?php

// do whatever to get $result


// php logic finished...

?>

<table>

  <tr>

    <th>Document_No</th>

    <th>Line_No</th>

    <th>Description</th>

    <th>Type</th>

    <th>Quantity</th>

  </tr>

  <?php foreach($result as $row): ?>

  <tr>

    <td><?= $row->Document_No ?></td>

    <td><?= $row->Line_No ?></td>

    <td><?= $row->Description?></td>

    <td><?= $row->Type ?></td>

    <td><?= $row->Quantity ?></td>

  </tr>

  <?php endforeach; ?>

</table>

对于表单,同样的想法适用:


<?php foreach($result as $index => $row): ?>

<input disabled id="description" class="form-control input-group-lg reg_name" name=“description[<?= $index ?>]” value=“<?= $row->Description?>” >



...

<?php endforeach; ?>


查看完整回答
反对 回复 2021-10-22
  • 2 回答
  • 0 关注
  • 176 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信