Laravel 5.2:在属性名称中使用数字

时间:2016-05-31 22:58:09

标签: php laravel-5.2

我正在创建一个在用户模型上有几张照片的应用,名为photo1photo2。实际的照片文件存储在Amazon S3上,相对路径存储在数据库中(例如:10206074968017993/photo1.jpg)。我在User模型中有一个访问器来检索照片的URL:

public function getPhoto1Attribute()
{
    return 'https://s3-'.env('AMAZON_REGION').'.amazonaws.com/'.env('AMAZON_BUCKET').'/'. $this->photo1;
}

这应该只返回照片的完整网址,其类似于:

https://s3-us-west-2.amazonaws.com/mybucket/10206074968017993/photo1.jpg

但相反,它会抛出一个错误

Undefined property: App\\Models\\User::$photo1

我认为1中的photo1导致了错误,因为如果我将字段重命名为photo,则代码效果很好。但是因为真正的应用程序比我在这里描述的更复杂,所以重命名字段不是一种选择。我该怎么办?

1 个答案:

答案 0 :(得分:0)

我刚刚决定避免在我的变量名中使用任何整数。虽然可能有一种方法可以使它工作,但我只想保持一切尽可能标准化,我认为最好只是避免变量名中的整数。