Laravel Eloquent模型中的模型复制键

时间:2016-01-07 19:44:22

标签: php laravel laravel-5 eloquent lumen

我无法弄清楚问题是什么,我记不清它什么时候出现,它现在没有出现很多问题,但它浪费了连接,这不是移动通信的最后一点。 问题是如下。

这是模型的输出,这样的输出适用于任何模型,我的意思是它将每个关联值与索引重复。

array:1 [
  0 => array:12 [
    "id" => "55"
    0 => "55"
    "user_id" => "199"
    1 => "199"
    "token" => "b7351fb13c5ce06a6f09ef6147c7d7d5"
    2 => "b7351fb13c5ce06a6f09ef6147c7d7d5"
    "expiration_time" => "1452795403"
    3 => "1452795403"
    "scope" => "0"
    4 => "0"
    "last_login_time" => "1452194400"
    5 => "1452194400"
  ]
]

我试图跟随函数调用的堆栈并停在

public static function hydrate(array $items, $connection = null)

我如上所述在这里转储。

我不知道是什么原因导致这种行为。

也许有人知道什么会导致这样的问题。 谢谢大家。

修改

我已将代码上传到pastebin http://laravel.io/bin/VP435

我根据自己的需要编辑了模型,但它不应该影响这部分。

我正试图找到邪恶的根源"马上。

{p} hybrate方法由Builder

调用
public function getModels($columns = ['*'])

这是对DB的查询        $ results = $ this-> query-> get($ columns);

查询正在跟随

"select * from `tokens` where `token` = ? limit 1"

这是正确的请求没有问题

1 个答案:

答案 0 :(得分:2)

请确保config/database.php已将fetch设为PDO::FETCH_CLASS,而不是PDO::FETCH_BOTH

默认情况下它是PDO::FETCH_CLASS,似乎你已经以某种方式将其设置为PDO::FETCH_BOTH

如果情况并非如此,请举例说明如何获得此对象。