如何检查值是否包含白色 space - Prestashop

how to check if value contain white space - Prestashop

我正在为我的管理控制器 prestashop.in 开发简单模块我有一个名为 username 的输入文本。我希望用户输入他的用户名而不需要 space。

我试过的

我已将以下代码添加到 Validate.php 并尝试从模块 class.but 访问它,但它不起作用。

Validate.php

public static function checkWhiteSpace($var){
  return preg_match('/\s/',$var);
}

型号class

class User extends ObjectModel
{

  public $id_user;
  public $username;

  public static $definition = array(
      'table' => 'Users',
      'primary' => 'id_user',
      'multilang' => false,
      'fields' => array(
          'username' => array(
              'type' => self::TYPE_STRING,
              'required' => true,
              'validate' => 'checkWhiteSpace',
          ),
    ),
);

}

它应该在您的模型 class 中工作,您不需要更改 Validate.php。

尝试反转验证的结果。因为当您的字段无效时,它在有效时显示为 true 和相反。所以试试这个

public static function checkWhiteSpace($var){
    return !preg_match('/\s/',$var);
}