ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
` /** * @param $value * @return bool * 验证cpf */ function validateCpf($value) { $c = empty($value) ? "" : preg_replace('/[^\d]/', '', $value); if (mb_strlen($c) != 11 || preg_match("/^{$c[0]}{11}$/", $c)) { return false; } for ( $s = 10, $n = 0, $i = 0; $s >= 2; $n += $c[$i++] * $s-- ) { } if ($c[9] != ((($n %= 11) < 2) ? 0 : 11 - $n)) { return false; } for ( $s = 11, $n = 0, $i = 0; $s >= 2; $n += $c[$i++] * $s-- ) { } if ($c[10] != ((($n %= 11) < 2) ? 0 : 11 - $n)) { return false; } return true; } ` ` //验证cnpj function validateCnpj ( string $document ) { // Only numbers if ( !preg_match('/^[\d]{14}$/', $document) ) { return false; } // CNPJ first Checksum for ( $i = 0, $j = 5, $sum = 0; $i < 12; $i++ ) { $sum += $document[$i] * $j; $j = ($j == 2) ? 9 : $j - 1; } $result = $sum % 11; if ( $document[12] !== (string)( $result < 2 ? 0 : 11 - $result ) ) { return false; } // CNPJ second Checksum for ($i = 0, $j = 6, $sum = 0; $i < 13; $i++) { $sum += $document[$i] * $j; $j = ($j == 2) ? 9 : $j - 1; } $result = $sum % 11; if ( $document[13] !== (string)( $result < 2 ? 0 : 11 - $result ) ) { return false; } return true; } `