* * For the full copyright and license information, please view the LICENSE file * that was distributed with this source code. */ declare(strict_types=1); namespace Respect\Validation\Rules; use function is_string; use function preg_match; /** * Validates if a value is considered a valid PHP Label, so that it can be used as a variable, function or class name. * * @author Danilo Correa * @author Emmerson Siqueira * @author Henrique Moody */ final class PhpLabel extends AbstractRule { /** * {@inheritDoc} */ public function validate($input): bool { return is_string($input) && preg_match('/^[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*$/', $input); } }