【问题标题】:Codeigniter accessing array valuesCodeigniter 访问数组值
【发布时间】:2017-10-15 19:02:46
【问题描述】:

我只是想知道如何访问从数据库中检索到的数组元素。我有以下代码来获取数据库中每个项目的名称。

$plat_options = $this->db->get('tblplatform_options')->select('name')->result();

如何访问数组$plat_options 中的名称?通常我会为 C# 中的第一个元素执行 $plat_options[0],这是如何在 php/codeigniter 中完成的?

【问题讨论】:

  • 首先做一个print_r($plat_options);,它将以一种可读性强且易于理解的格式向您显示数组

标签: php codeigniter


【解决方案1】:

在 PHP/Codeigniter 中,可以用同样的方式完成:

$plat_options[0] //if you have this element, usually is better to check if exists. 

您可以使用foreach($plat_options as $option){...} 检索所有元素 您可以投射到对象:https://www.kathirvel.com/php-convert-or-cast-array-to-object-object-to-array/

或者使用 Codeigniter Helper(假设您使用的是 CI3):http://www.codeigniter.com/user_guide/helpers/array_helper.html

我建议知道您的数组格式是哪种并以这种方式检索(如果您不知道,您可以这样做:var_dump($plat_options))以了解是否是关联数组。

你可以使用 result_array() 函数:

$data = $plat_options->result_array();
echo($data[0]['name']);

或:

$data = array_shift($q->result_array());
echo($data['name']);

我从Codeigniter $this->db->get(), how do I return values for a specific row? 中提取了最后一部分,您也可以查看。

如果你对 CI 不太了解,最好做一个简单的教程来了解数据 + ActiveRecord 的工作原理。

希望对你有帮助!

【讨论】:

  • 因为我在模型中使用信息,所以我不确定如何实际查看 var_dump。我对 CI 很陌生,所以我还有很多东西要学。
  • 检查我的更新,你应该可以访问你的数据。
  • 是的,所以 $data[0]['name'] 的 ['name'] 部分是我所缺少的。我想是因为它只抓取了不需要“名称”属性来访问它的名称。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-15
相关资源
最近更新 更多