对于这个规则,我得到了一个错误syntax error, unexpected '.', expecting ')'

public static $rules = array(
    'first_name' => 'required|alpha-dash',
    'last_name' => ' required|alpha-dash',
    'media_release' => 'required|boolean',
    'birthday' => 'before:' . date('Y-m-d')

);

我不明白为什么这行不通.我在运行Laravel 4.2.12

推荐答案

You can't use a function when defining class member variables. You'll have to move that part to your constructor:

<?php
class Foo {
    public static $rules = array(
        'first_name' => 'required|alpha-dash',
        'last_name' => ' required|alpha-dash',
        'media_release' => 'required|boolean'
    );
    public function __construct()
    {
        self::$rules['birthday'] = 'before:' . date('Y-m-d');
    }

EDIT:

The above solution may not work in Laravel. You may have to use a "Custom Validator" instead:

http://laravel.com/docs/4.2/validation#custom-validation-rules

UPDATE:

看起来Laravel 5推出了更好的解决方案.见下面费尔南多的答案.

Laravel相关问答推荐

哈希:check()不返回预期结果Laravel 10

AJAX响应中未定义的全名

如何使用PHP版本8.2.6安装beyondcode/laravel-websockets软件包?

Laravel 语法 GroupBy 获取列到数组

Laravel:在 PHPUnit 的覆盖率报告中包含文件夹(如果在 app/ 文件夹之外)?

如何避免谷歌翻译翻译:参数

如何在 Laravel 中将 Select 选项表单插入数据库

Laravel:子文件夹中的 lang 文件

Laravel:如何通过 id 从集合中删除项目

升级到 laravel 5.4 后调用未定义的方法

artisan 迁移错误找不到类'Doctrine\\DBAL\\Driver\\PDOMySql\\Driver'

无法安装 Laravel 包 - 干预图像

不支持驱动Driver[] - Laravel 5.3

在 Laravel 中显示已注册的路由

laravel如何访问具有表编号名称的列?

无法在控制器的构造函数上调用 Auth::user()

为什么`catch (Exception $e)` 不处理这个`ErrorException`?

Distinct values with pluck

Laravel 5.3 - 用户Collection 的单一通知(关注者)

函数参数前的三个点代表什么?