Set namespace on DbQbe. Set namespace to 'DbSearch'. Split Advisor.class.php file. Change Advisor namespace. Rename DbQbe class and file. Set namespace on DisplayResults. Set namespace on Error. Use namespace for ErrorHandler. Add class autoloader. Change ErrorHandler filename. Remove some require. Update Config namespace path. Update PMA_Util to PMA\libraries\Util. Rename Font and File classes files. Use namespace for Footer. Set namespace in all libraries classes. Namespace OutputBuffering. Export SubPartition. Rename Partition file. Namespace PDF. Namespace RecentFavoriteTable. Replace PMA_Response by Response and PMA_Message by Message. Update uses and calls. Fix unit tests. Fix SqlParser autoload. Signed-off-by: Hugues Peccatte <hugues.peccatte@gmail.com>
136 lines
3.9 KiB
PHP
136 lines
3.9 KiB
PHP
<?php
|
|
/* vim: set expandtab sw=4 ts=4 sts=4: */
|
|
/**
|
|
* Implements PMA_StringByte interface using native PHP functions.
|
|
*
|
|
* @package PhpMyAdmin-String
|
|
* @subpackage Native
|
|
*/
|
|
namespace PMA\libraries;
|
|
|
|
require_once 'libraries/StringAbstractType.class.php';
|
|
|
|
/**
|
|
* Implements PMA_StringByte interface using native PHP functions.
|
|
*
|
|
* @package PhpMyAdmin-String
|
|
* @subpackage Native
|
|
* @todo May be join this class with PMA_StringNative class
|
|
*/
|
|
class PMA_StringNativeType extends PMA_StringAbstractType
|
|
{
|
|
/**
|
|
* Checks if a character is an alphanumeric one
|
|
*
|
|
* @param string $c character to check for
|
|
*
|
|
* @return boolean whether the character is an alphanumeric one or not
|
|
*/
|
|
public function isAlnum($c)
|
|
{
|
|
return ($this->isAlpha($c) || $this->isDigit($c));
|
|
} // end of the "isAlnum()" function
|
|
|
|
/**
|
|
* Checks if a character is an alphabetic one
|
|
*
|
|
* @param string $c character to check for
|
|
*
|
|
* @return boolean whether the character is an alphabetic one or not
|
|
*/
|
|
public function isAlpha($c)
|
|
{
|
|
return ($this->isUpper($c) || $this->isLower($c));
|
|
} // end of the "isAlpha()" function
|
|
|
|
/**
|
|
* Checks if a character is a digit
|
|
*
|
|
* @param string $c character to check for
|
|
*
|
|
* @return boolean whether the character is a digit or not
|
|
*/
|
|
public function isDigit($c)
|
|
{
|
|
$ord_zero = 48; //ord('0');
|
|
$ord_nine = 57; //ord('9');
|
|
$ord_c = ord($c);
|
|
|
|
return $this->numberInRangeInclusive($ord_c, $ord_zero, $ord_nine);
|
|
} // end of the "isDigit()" function
|
|
|
|
/**
|
|
* Checks if a character is an upper alphabetic one
|
|
*
|
|
* @param string $c character to check for
|
|
*
|
|
* @return boolean whether the character is an upper alphabetic one or not
|
|
*/
|
|
public function isUpper($c)
|
|
{
|
|
$ord_A = 65; //ord('A');
|
|
$ord_Z = 90; //ord('Z');
|
|
$ord_c = ord($c);
|
|
|
|
return $this->numberInRangeInclusive($ord_c, $ord_A, $ord_Z);
|
|
} // end of the "isUpper()" function
|
|
|
|
/**
|
|
* Checks if a character is a lower alphabetic one
|
|
*
|
|
* @param string $c character to check for
|
|
*
|
|
* @return boolean whether the character is a lower alphabetic one or not
|
|
*/
|
|
public function isLower($c)
|
|
{
|
|
$ord_a = 97; //ord('a');
|
|
$ord_z = 122; //ord('z');
|
|
$ord_c = ord($c);
|
|
|
|
return $this->numberInRangeInclusive($ord_c, $ord_a, $ord_z);
|
|
} // end of the "isLower()" function
|
|
|
|
/**
|
|
* Checks if a character is a space one
|
|
*
|
|
* @param string $c character to check for
|
|
*
|
|
* @return boolean whether the character is a space one or not
|
|
*/
|
|
public function isSpace($c)
|
|
{
|
|
$ord_space = 32; //ord(' ')
|
|
$ord_tab = 9; //ord('\t')
|
|
$ord_CR = 13; //ord('\n')
|
|
$ord_NOBR = 160; //ord('U+00A0);
|
|
$ord_c = ord($c);
|
|
|
|
return ($ord_c == $ord_space
|
|
|| $ord_c == $ord_NOBR
|
|
|| $this->numberInRangeInclusive($ord_c, $ord_tab, $ord_CR));
|
|
} // end of the "isSpace()" function
|
|
|
|
/**
|
|
* Checks if a character is an hexadecimal digit
|
|
*
|
|
* @param string $c character to check for
|
|
*
|
|
* @return boolean whether the character is an hexadecimal digit or not
|
|
*/
|
|
public function isHexDigit($c)
|
|
{
|
|
$ord_Aupper = 65; //ord('A');
|
|
$ord_Fupper = 70; //ord('F');
|
|
$ord_Alower = 97; //ord('a');
|
|
$ord_Flower = 102; //ord('f');
|
|
$ord_zero = 48; //ord('0');
|
|
$ord_nine = 57; //ord('9');
|
|
$ord_c = ord($c);
|
|
|
|
return ($this->numberInRangeInclusive($ord_c, $ord_zero, $ord_nine)
|
|
|| $this->numberInRangeInclusive($ord_c, $ord_Aupper, $ord_Fupper)
|
|
|| $this->numberInRangeInclusive($ord_c, $ord_Alower, $ord_Flower));
|
|
} // end of the "isHexDigit()" function
|
|
}
|