Back to PhocacartText class

Method filterValue

public static string|string[]|null
filterValue
(mixed $string, mixed $type = 'html')
Parameters
  • $string
  • string $type html|url|number|number2|alphanumeric|alphanumeric2|alphanumeric3|folder|file|folderpath|filepath|text
Returns
  • string|string[]|null

Method filterValue - Source code

/**
 * @param $string
 * @param string $type html|url|number|number2|alphanumeric|alphanumeric2|alphanumeric3|folder|file|folderpath|filepath|text
 * @return string|string[]|null
 */
public static function filterValue($string, $type = 'html')
{
    switch ($type) {
        case 'url':
            return rawurlencode($string);
            break;
        case 'number':
            return preg_replace('/[^.0-9]/', '', $string);
            break;
        case 'number2':
            //return preg_replace( '/[^0-9\.,+-]/', '', $string );
            return preg_replace('/[^0-9\\.,-]/', '', $string);
            break;
        case 'alphanumeric':
            return preg_replace("/[^a-zA-Z0-9]+/", '', $string);
            break;
        case 'alphanumeric2':
            return preg_replace("/[^\\w-]/", '', $string);
            // Alphanumeric plus _  -
            break;
        case 'alphanumeric3':
            return preg_replace("/[^\\w.-]/", '', $string);
            // Alphanumeric plus _ . -
            break;
        case 'alphanumeric4':
            return preg_replace("/[^\\w.,-]/", '', $string);
            // Alphanumeric plus _ . , -
            break;
        case 'alphanumeric5':
            return preg_replace("/[^\\w.,]/", '', $string);
            // Alphanumeric plus _ . ,
            break;
        case 'folder':
        case 'file':
            $string = preg_replace('/[\\"\\*\\/\\\\:\\<\\>\\?\'\\|]+/', '', $string);
            return htmlspecialchars($string, ENT_QUOTES | ENT_SUBSTITUTE, 'UTF-8');
            break;
        case 'folderpath':
        case 'filepath':
            $string = preg_replace('/[\\"\\*\\:\\<\\>\\?\'\\|]+/', '', $string);
            return htmlspecialchars($string, ENT_QUOTES | ENT_SUBSTITUTE, 'UTF-8');
            break;
        case 'text':
            return trim(htmlspecialchars(strip_tags($string), ENT_QUOTES | ENT_SUBSTITUTE, 'UTF-8'));
            break;
        case 'html':
        default:
            return htmlspecialchars($string, ENT_QUOTES | ENT_SUBSTITUTE, 'UTF-8');
            break;
    }
}