雄辩的模型toArray()丢失键的类型

时间:2015-07-01 09:11:53

标签: laravel eloquent laravel-5

我使用照亮5.1。* - (实际上" laravel/lumen-framework": "5.1.*")

我的问题是,当我做

时,我有不同的行为
var_dump($model->toArray());

用于两个不同的环境(但具有类似的php version 5.6.8-1~dotdeb+wheezy.1 vs PHP 5.6.10-1+deb.sury.org~trusty+1)和相同的供应商包。)

在第一个环境中,整数属性为int:

array:4 [▼
  "id" => 1
  "value" => "email"
  "standard" => 1
  "order" => 0
]

在第二个中,它的字符串:

array:4 [▼
  "id" => "1"
  "value" => "email"
  "standard" => "1"
  "order" => "0"
]

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

问题在于您正在使用的MySQL驱动程序。 MySQLND正在获取 AND cast 值,而libmysql只是将所有值作为字符串获取。它与Laravel本身无关,也与PHP无关。这只是您用于与数据库通信的数据库连接器的问题。简单 apt-get install php5-mysqlnd应该做到这一点。