当前位置: 首页 > 知识库问答 >
问题:

Laravel雄辩的未定义偏移量:0

潘青青
2023-03-14

我使用雄辩,以获得我的产品在数据库中的价格。这是我的代码:

$this->record = DB::select('select * from get_price(?);', array($product_name));
$this->price = $this->record[0]->price;

我肯定会得到一个价格与此查询。但是当我执行我的代码时,我得到以下错误:

Undefined offset: 0 in line 2

PHP找不到$this-

$this->record = DB::select('select * from get_price(?);', array($product_name));
var_dump(isset($this->record[0]));
foreach ($this->record as $key => $value) {
    var_dump($key);
    var_dump($value);
    var_dump($value->price);exit();
}
$this->price = $this->record[0]->price;

我得到:

// var_dump(isset($this->record[0]));
bool(true)

// var_dump($key);
int(0)

// var_dump($value);
class stdClass#2059 (2) {
  public $price =>
  string(2) "1"
  public $currency =>
  string(3) "USD"
}

// var_dump($value->price);exit();
string(2) "1"

我不知道为什么我不能进入这个-

我使用Laravel 4.2。

共有2个答案

岳允晨
2023-03-14

你可以这样做

$this->record = DB::select('select * from get_price(?);', array($product_name));
$this->price = collect($this->record)->first()->price;

只有当查询获取任何记录时,它才会起作用。

晏望
2023-03-14

$this-

为了获得一个数组,您可以调用illighted\Database\Eloquent\Collection的方法all()

这将有助于:

$r = $this->record->all();
dd($r[0]);

 类似资料:
  • 我有题目上说的问题。我知道这个问题是什么意思,但我不知道如何解决我的具体情况,所以我需要你的帮助。 我有item.php和cart.php。在item.php构造函数中是: 而在cart.php构造函数中是: 和函数也是: 而主代码是: 粗体线为line: 在方法AddItem中。 在我看来,就像我说:php应该找到1,但他没有找到。最奇怪的是,结果正正确地显示在我的屏幕上。

  • 问题内容: 我在PHP中收到以下错误 注意未定义的偏移量1:在C:\ wamp \ www \ includes \ imdbgrabber.php第36行中 这是导致它的PHP代码: 错误是什么意思? 问题答案: 如果找不到匹配项,则为空数组。因此,您应该在访问之前检查是否找到了匹配项,例如:

  • 我是新来的拉威尔,我曾在codeigniter工作。我对雄辩的ORM概念着迷。我有一个关于雄辩能力的一般性问题。ORM的功能是什么,我的意思是我们可以获得相关表行的级别。如果你看“http://four.laravel.com/docs/eloquent#relationships 一对一 一对多 多对多 多态关系 在我看来,“一对一”意味着一级。表1表2

  • 在有说服力的ORM上,是否有一种较短的方法在Laravel中插入数据? 目前我正在这样做: 就像你看到的,所有的列都像属性一样命名。 我知道您可以将对象与all()函数和fetch()一起使用。但是我从另一个对象(soap服务器)获取数据。 有没有办法转换这个?也许在模型上?

  • 我在使用laravel雄辩的ORM时遇到了一个问题。 基本上,我正在获取与用户相关的帖子,以及他的评论,但是,我正在尝试集成某种分页(我一次只想取5个帖子)。 而使用跳过方法,我总是得到以下laravel错误: 方法skip不存在。 这是我实际使用的代码片段。 有人能给我任何帮助吗? 帐户模型检索与用户相关的帖子模型(关系),但是,我想一次只收到5个帖子,用于基于ajax的请求。

  • 我有以下三个表格: 所以基本上这种关系就像: 用户有许多项目 项目属性到客户端 我的问题是: 如何使用eloquent获得用户的所有客户端? 似乎我不能用户hasManyPass方法,因为在客户端表中没有project_id。 因此,我希望达到的目标是: