Laravel验证的数字应该恰好是10位数

Dha*_*eda 3 php laravel

我正在尝试验证一个有电话号码的表格,我们希望它正好是10位数.但即使输入正确,它也会出错.我在控制器中使用以下代码,因此请告知需要更改的内容.

public function tytraining(Request $request)
    {

        $this->validate($request, [
            'txt_name'  => 'required',
            'txt_email' => 'required|email',
            'txt_phone' => 'required|numeric|between:9,11'
        ]);

        $name = Input::get('txt_name');

        $email = Input::get('txt_email');

        $phone = Input::get('txt_phone');

        $type = "bls-training";
        $url = '?' . Input::get('url');

        $medicalRequest = new ParseObject("MedicalRequest");

        $medicalRequest->set("name", $name);
        $medicalRequest->set("email", $email);
        $medicalRequest->set("phone", $phone);
        $medicalRequest->set("type", $type);
        $medicalRequest->set("requestMessage", "training");
        $medicalRequest->set("url", $url);

        try {
            $medicalRequest->save();

        } catch (ParseException $ex) {
            echo(' Some Error Occured');
        }
    }
Run Code Online (Sandbox Code Playgroud)

请告知我应该如何通过Laravel进行验证.

提前感谢大家花费宝贵的时间,关心并帮助我.

小智 7

使用大小和数字验证 https://laravel.com/docs/5.3/validation#rule-digits

$this->validate($request, [
            'txt_name'  => 'required',
            'txt_email' => 'required|email',
            'txt_phone' => 'required|digits:10'
        ]);
Run Code Online (Sandbox Code Playgroud)


Mar*_*łek 5

您还没有提到您的 Laravel 版本,但从至少 Laravel 4.2 开始,您有数字规则,这就是您在这里需要的,所以您的电话规则应该如下所示:

'txt_phone' => 'required|numeric|digits:10'
Run Code Online (Sandbox Code Playgroud)


Has*_*ida 5

对于字符串长度(精确):

 public function rules()
    {
        return [
            'input' => 'required|string|size:10'
        ];
Run Code Online (Sandbox Code Playgroud)

对于数字长度(精确):

public function rules()
        {
            return [
                'input' => 'required|string|digits:10'
            ];
        }
Run Code Online (Sandbox Code Playgroud)

对于字符串范围:

   public function rules()
            {
                return [
                    'input' => 'required|string|min:5|max:10'
                ];
        }
Run Code Online (Sandbox Code Playgroud)

对于数字范围:

   public function rules()
            {
                return [
                    'input' => 'required|digits_between:5,10'
                ];
        }
Run Code Online (Sandbox Code Playgroud)