【问题标题】:Object of class stdClass could not be converted to int类 stdClass 的对象无法转换为 int
【发布时间】:2016-02-27 10:52:03
【问题描述】:

我有这样的错误 stdClass 类的对象无法转换为 int

控制器

if ($this->input->post('nama') == 'pendek boju jeans') {
                    $a=0.810;
                }else{
                    $a=1.144;
                }
                $kain= $this->input->post('id_kain');
                $b=$this->jeans_model->luaskain($kain);
                $tpotongan=round($a/$b);

型号

    public function luaskain($kain)
  {
    $this->db->select("ukuran");
    $this->db->from("bahankain");
    $this->db->where('id_kain',$kain);
    $query = $this->db->get();
    return $query->row();
  }

在我的模型中,像这样从 bahankain.ukuran 获取价值

|ukuran|
|800|

为什么会出错Object of class stdClass could not be converted to int 以及如何解决这个问题?

【问题讨论】:

  • 你在 var_dump($b) 上得到了什么??
  • 因为对象是一个有方法和属性的结构,而int只是一个数字。

标签: php codeigniter


【解决方案1】:

我不知道脚本中的名称是什么意思,但问题是,正如我所说,对象是一个至少具有一些属性的结构,int 只是一个数字.

那么,当你用对象来划分事物时——这意味着什么?应该从对象中获取什么值?谁能告诉?当您将对象除以某物时也是如此。

所以,我想,首先你应该var_dumpprint_r 你的$b 变量是对象,用于除法。然后 - 从$b 变量中找出你应该使用的数字。我想是ukuran(不管它是什么意思)。

所以,更精确的代码是:

$tpotongan = round($a / ($b->ukuran)); // taking ukuran property from object

【讨论】:

    【解决方案2】:

    在模型中试试这个

    public function luaskain($kain)
      {
        $this->db->select("ukuran");
        $this->db->from("bahankain");
        $this->db->where('id_kain',$kain);
        $query = $this->db->get();
        $result=$query->row();
            if (isset($result))
            {
                return $result->columnname;//write your column name
            }
            else
            {
                return 1;
            }
      }
    

    【讨论】:

      【解决方案3】:

      $query->row(),在您的方法luaskain($kain) 中,返回一个stdClass 类型的对象,它代表数据库结果集中的一个(一个或多个具有值的字段)查询 - 不是单个字段值。

      为了访问单个字段的值,在本例中为字段ukuran,您需要像$b->ukuran 一样访问它。您可以使用 that 值除以(当然,请确保它不为零,因为您不能除以零)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-08-21
        • 1970-01-01
        • 1970-01-01
        • 2019-12-22
        • 2011-04-06
        相关资源
        最近更新 更多