Проверка на символи

Soul_Stealler

Registered
Ето ви едно кодче :)

Код:
<?php
/* 
	Author: Radoslav Mazganov
	Last Modified: 09.06.2010
	Site: http://soul-design.org
*/


class Conditions
{
	function is_num($var)
	{
		if(preg_match('/^[0-9]+$/', $this->variable))
		{
			return TRUE;
		}
		else
		{
			return FALSE;
		}
	}


	function is_alpha($var)
	{
		if(preg_match('/^[a-z]+$/i', $var))
		{
			return TRUE;
		}
		else
		{
			return FALSE;
		}
	}

	function is_num_alpha($var)
	{
		if(preg_match('/^[a-z0-9]+$/i', $var))
		{
			return TRUE;
		}
		else
		{
			return FALSE;
		}
	}

	function is_uppercase($var)
	{
		if(preg_match('/^[A-Z0-9]+$/', $var))
		{
			return TRUE;
		}
		else
		{
			return FALSE;
		}
	}

	function is_lowercase($var)
	{
		if(preg_match('/^[a-z0-9]+$/', $var))
		{
			return TRUE;
		}
		else
		{
			return FALSE;
		}
	}
	
	function check($array)
	{
		reset($array);
		current($array);
		
		$parts = each($array);
		$parts[0] = explode('|', $parts[0]);
		
		if(in_array('num', $parts[0]) && in_array('alpha', $parts[0]))
		{
			unset($parts[0][array_search('num', $parts[0])]);
			unset($parts[0][array_search('alpha', $parts[0])]);
			$parts[0][] = 'num_alpha';
		}
		
		$return = TRUE;

		foreach($parts[0] as $condition)
		{
			$condition = 'is_'.$condition;

			if(!$this->$condition($parts[1]))
			{
				$return = FALSE;
				break;
			}
		}
		
		if($return)
		{
			return $parts[1];
		}
		else
		{
			return FALSE;
		}
	}
}

$conditions = new Conditions();

$var = 'asdf';

echo 'NUM: '.$conditions->check(array('num' => $var)).'<br />';
echo 'ALPHA: '.$conditions->check(array('alpha' => $var)).'<br />';
echo 'NUMALPHA: '.$conditions->check(array('num|alpha' => $var)).'<br /><br />';

echo 'NUMALPHA lower: '.$conditions->check(array('num|alpha|lowercase' => $var)).'<br />';
echo 'NUMALPHA upper: '.$conditions->check(array('num|alpha|uppercase' => $var)).'<br /><br />';

echo 'ALPHA lower: '.$conditions->check(array('alpha|lowercase' => $var)).'<br />';
echo 'ALPHA upper: '.$conditions->check(array('alpha|uppercase' => $var)).'<br />';
?>
 

Back
Горе