naisi_value_is_valid

查看 Markdown

使用指定内置验证器验证非空 UTF-8 字符串。

与 naisi_string_is_valid() 共享 NAISI_VALIDATOR_* 规则,包括 CREDIT_CODE_FORMAT、 COLOR_HEX、OPENID、LANDLINE_NUMBER、ASCII_IDENTIFIER;严格匹配完整输入,不 trim。 信用代码只检查字符及长度,OpenID 只检查格式,不验证真实性或归属。 沿用 LICENSE / PROOF 和 DATA capability;未授权或输入无效返回 false。

函数签名

function naisi_value_is_valid(string $value, int $validator): bool

调用前提

应用入口先调用 naisi_is_ext_license_valid 并确认返回 true。只验证同一请求内已有的有效 FULL/BASIC 证明;没有证明或证明失效时立即返回失败值,不现场补做完整校验。

授权类别:LICENSE;执行模式:PROOF。许可不代替登录、租户或权限上下文;身份与数据要求见本页参数及用途说明。

参数

$value

  • 类型:string
  • 必填:是
  • 默认值:无
  • 方向:输入参数。

需要使用指定验证器检查的字符串。

$validator

  • 类型:int
  • 必填:是
  • 默认值:无
  • 方向:输入参数。

用于 naisi_value_is_valid() 的 NAISI_VALIDATOR_* 选择器。

返回值

类型:bool

验证或条件判断成立时返回 true,否则返回 false。

关联常量

  • NAISI_VALIDATOR_ALPHA_DASH = 1 — 小写字母与连字符验证正则。 匹配以小写字母开头和结尾、内部可包含连字符的字符串。
  • NAISI_VALIDATOR_SLUG = 2 — URL slug 验证正则。 匹配以小写字母开头,可包含小写字母、数字和连字符的 slug。
  • NAISI_VALIDATOR_ALPHA_UNDERSCORE = 3 — 小写字母与下划线验证正则。 匹配以小写字母开头和结尾、内部可包含下划线的字符串。
  • NAISI_VALIDATOR_ALPHA_NUMBER_UNDERSCORE = 4 — 小写字母、数字与下划线验证正则。 匹配以小写字母开头,并由小写字母、数字和下划线组成的字符串。
  • NAISI_VALIDATOR_PINYIN = 5 — 拼音字符串验证正则。 匹配由小写拼音片段组成、片段之间使用单个空白分隔的字符串。
  • NAISI_VALIDATOR_STRING = 6 — 通用单行字符串验证正则。 要求内容非空,并排除换行、控制字符以及部分高风险字符。
  • NAISI_VALIDATOR_CONTENT = 7 — 通用多行内容验证正则。 要求内容非空,并排除控制字符以及部分高风险字符;允许正常换行。
  • NAISI_VALIDATOR_ENGLISH_STRING = 8 — 英文业务字符串验证正则。 匹配以英文字母或数字开头,并由英文、数字和有限符号构成、至少两个字符的字符串。
  • NAISI_VALIDATOR_USER = 9 — 用户名验证正则。 匹配小写字母开头、字母或数字结尾,并允许数字、连字符和下划线的用户名。
  • NAISI_VALIDATOR_ENGLISH = 10 — 纯英文字母验证正则。 匹配只包含大写或小写英文字母的非空字符串。
  • NAISI_VALIDATOR_CHINESE = 11 — 中文兼容字符验证正则。 匹配一个或多个非 ASCII Unicode 字符,包括汉字、Emoji 表情及其他中文业务文本中允许的扩展字符。
  • NAISI_VALIDATOR_NUMBER = 12 — 纯数字验证正则。 匹配只包含十进制数字的非空字符串。
  • NAISI_VALIDATOR_CHINESE_ENGLISH = 13 — 中文或英文组合验证正则。 字符只能是英文字母或非 ASCII Unicode 字符,可只出现其中一种类别。
  • NAISI_VALIDATOR_ENGLISH_NUMBER = 14 — 英文或数字组合验证正则。 匹配英文、数字或两者组合的非空字符串。
  • NAISI_VALIDATOR_CHINESE_ENGLISH_NUMBER = 15 — 中文、英文或数字组合验证正则。 字符只能是非 ASCII Unicode 字符、英文字母或 ASCII 数字,可只出现其中一种类别。
  • NAISI_VALIDATOR_CHINESE_ENGLISH_MATCH = 16 — 中文与英文同时出现验证正则。 字符只能是非 ASCII Unicode 字符或英文字母,并且两类字符必须各出现至少一次。
  • NAISI_VALIDATOR_ENGLISH_NUMBER_MATCH = 17 — 英文与数字同时出现验证正则。 字符只能是英文字母或 ASCII 数字,并且两类字符必须各出现至少一次。
  • NAISI_VALIDATOR_CHINESE_ENGLISH_NUMBER_MATCH = 18 — 中文、英文与数字同时出现验证正则。 字符只能是非 ASCII Unicode 字符、英文字母或 ASCII 数字,并且三类字符必须各出现至少一次。
  • NAISI_VALIDATOR_LOWERCASE_KEY_NAME = 19 — 小写键名验证正则。 匹配小写字母开头、字母或数字结尾,且至少两个字符的字母、数字和下划线键名。
  • NAISI_VALIDATOR_UPPERCASE_KEY_NAME = 20 — 大写键名验证正则。 匹配大写字母开头、字母或数字结尾,且至少两个字符的字母、数字和下划线键名。
  • NAISI_VALIDATOR_IMAGE_SIZE = 21 — 图片尺寸文本验证正则。 匹配使用星号连接的宽高值,每一边必须在 10 至 9000 之间。
  • NAISI_VALIDATOR_MODEL_SPEC_PATTERN = 22 — 型号规格验证正则。 匹配字母或数字开头和结尾,并允许星号、点、加减号、斜杠及井号的规格文本。
  • NAISI_VALIDATOR_DOMAIN = 23 — 域名验证正则。 匹配总长不超过253、至少包含一个点的规范小写域名;标签不得包含下划线、连续点或首尾连字符。
  • NAISI_VALIDATOR_LOWERCASE = 24 — 纯小写字母验证正则。 匹配只包含小写英文字母的非空字符串。
  • NAISI_VALIDATOR_CREDIT_CODE_FORMAT = 25 — 18 位统一社会信用代码字符格式,ASCII 大小写均可;不验证校验位。
  • NAISI_VALIDATOR_COLOR_HEX = 26 — 仅 #RGB、#RRGGBB、#RRGGBBAA 颜色格式。
  • NAISI_VALIDATOR_OPENID = 27 — 26~30 位 ASCII 字母、数字、下划线或短横线,仅验证格式。
  • NAISI_VALIDATOR_LANDLINE_NUMBER = 28 — 0 开头的 3~4 位区号、短横线及 5~8 位号码。
  • NAISI_VALIDATOR_ASCII_IDENTIFIER = 29 — 非空 ASCII 字母、数字、下划线或短横线,允许数字开头。

调用示例

当前请求须满足上方调用前提;请检查实际返回值和引用输出,随机结果及数据包内容以运行环境为准。

$value = 'product-item';
$validator = 1;

$result = naisi_value_is_valid($value, $validator);
var_export($result);

相关接口

需要同时检查内置验证规则和 Unicode 长度上下限时,使用 naisi_string_is_valid。该接口的 0 关闭对应长度限制,负数无效;naisi_string_length_is_valid() 要求非空字符串,上限小于 1 始终返回 false。

版本信息

  • 自版本:1.0.6
  • 实现模块:validation
  • 授权类别:LICENSE / PROOF
  • 失败回退:false
  • 文档同步:2026-10-18