Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

CakePHP 3 - Phân tích cú pháp ngày với LocalStringFormat để sửa định dạng SQL và xác thực chính xác

Phân tích cú pháp (trong quy trình phân tích cú pháp) và xác thực không liên quan gì đến nhau, điều trước sẽ xảy ra sau cái sau.

Kiểm tra date API phương thức xác thực, nó cần các đối số khác, nghĩa là định dạng để sử dụng và một biểu thức chính quy tùy chỉnh để sử dụng thay vì các định dạng được xác định trước.

API> \ Cake \ Validation \ Validation ::ngày ()

Vì vậy, để xác thực đúng cách dữ liệu tiếng Đức đã bản địa hóa của bạn, bạn sẽ phải chỉ định dmy định dạng.

->add('datefield', 'valid', ['rule' => ['date', 'dmy']])

Nếu bạn muốn áp dụng xác thực bản địa hóa trên toàn cầu, theo cách mà định dạng có thể được thay đổi từ một điểm duy nhất trong ứng dụng của bạn, thì bạn có thể ví dụ:sử dụng quy tắc xác thực tùy chỉnh và nhà cung cấp tùy chỉnh có sẵn trên toàn cầu, tìm nạp định dạng từ ứng dụng của bạn cấu hình, như

namespace App\Validation;

use Cake\Core\Configure;
use Cake\Validation\Validation;

class AppValidation
{
    public static function date($check) {
        return Validation::date($check, Configure::read('Locale.validation.dateFormat'));
    }
}
$validator->provider('appValidation', 'App\Validation\AppValidation');

$validator->add('datefield', 'valid', [
    'rule' => 'date',
    'provider' => 'appValidation'
])

Xem thêm Sách dạy nấu ăn> Xác thực> Quy tắc xác thực tùy chỉnh




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ON DELETE CASCADE không hoạt động trong MySQL

  2. Loại bỏ các hàng trùng lặp trong câu lệnh PostgreSQL SELECT

  3. Lệnh thực thi mệnh đề / truy vấn MySQL

  4. Làm cách nào để kích hoạt tiện ích mở rộng MySQLi trong PHP 7?

  5. Nhân rộng MySQL để có tính khả dụng cao