当前位置: 首页>>代码示例>>PHP>>正文


PHP filter_id函数代码示例

本文整理汇总了PHP中filter_id函数的典型用法代码示例。如果您正苦于以下问题:PHP filter_id函数的具体用法?PHP filter_id怎么用?PHP filter_id使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了filter_id函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: testExpects

 public function testExpects()
 {
     //$ff = new FortissimoHarness(self::config);
     $cmd = new SimpleCommandTest('test');
     $expectations = $cmd->expects();
     $params = $expectations->params();
     $this->assertEquals(4, count($params), 'Command has four arguments');
     // Since params should be in order, we can shift them off the top:
     $testString = array_shift($params);
     $this->assertEquals('testString', $testString->getName());
     $this->assertEquals('A test string', $testString->getDescription());
     $testNumeric = array_shift($params);
     $this->assertEquals('testNumeric', $testNumeric->getName());
     // Count filters:
     $filters = $testNumeric->getFilters();
     $this->assertEquals(1, count($filters));
     $this->assertEquals('float', $filters[0]['type']);
     $this->assertNull($filters[0]['options']);
     // Manually execute a filter:
     $this->assertEquals(7.5, filter_var(7.5, filter_id($filters[0]['type']), NULL));
     // Test a failed filter:
     $this->assertFalse(filter_var('matt', filter_id($filters[0]['type']), NULL), 'String is not a float.');
     // Test callbacks
     $testNumeric2 = array_shift($params);
     $filters = $testNumeric2->getFilters();
     $this->assertEquals('callback', $filters[0]['type']);
     $this->assertTrue($filters[0]['options']['options'][0] instanceof SimpleValidatorTest, 'Option callback is a SimpleValidatorTest');
     $this->assertEquals(7, filter_var(3.5, FILTER_CALLBACK, $filters[0]['options']));
 }
开发者ID:masterminds,项目名称:fortissimo,代码行数:29,代码来源:BaseFortissimoCommandTest.php

示例2: doListFilters

 /**
  * Lists all filters available with the filter extension.
  */
 public function doListFilters()
 {
     $list = filter_list();
     foreach ($list as $filter) {
         echo filter_id($filter), ": {$filter}<br />\n";
     }
 }
开发者ID:laiello,项目名称:crindigan,代码行数:10,代码来源:hello.php

示例3: parseInputFromData

 private function parseInputFromData($useOverride)
 {
     $this->allElementsValid = true;
     foreach ($this->definition as $elementName => $inputElement) {
         $hasVariable = isset($this->inputData[$elementName]) || $useOverride == true && isset($_GET[$elementName]);
         if (!$hasVariable) {
             if ($inputElement->type === ezcInputFormDefinitionElement::REQUIRED) {
                 throw new ezcInputFormVariableMissingException($elementName);
             } else {
                 $this->properties[$elementName] = ezcInputForm::INVALID;
                 $this->allElementsValid = false;
                 continue;
             }
         }
         if ($useOverride == true && isset($_GET[$elementName])) {
             $flags = FILTER_NULL_ON_FAILURE | $inputElement->flags;
             $value = filter_var(isset($_GET[$elementName]) ? $_GET[$elementName] : null, filter_id($inputElement->filterName), array('options' => $inputElement->options, 'flags' => $flags));
         } else {
             $flags = FILTER_NULL_ON_FAILURE | $inputElement->flags;
             $value = filter_var($this->inputData[$elementName], filter_id($inputElement->filterName), array('options' => $inputElement->options, 'flags' => $flags));
         }
         if ($value !== null) {
             $this->properties[$elementName] = ezcInputForm::VALID;
             $this->propertyValues[$elementName] = $value;
         } else {
             $this->properties[$elementName] = ezcInputForm::INVALID;
             $this->allElementsValid = false;
         }
     }
 }
开发者ID:Adeelgill,项目名称:livehelperchat,代码行数:30,代码来源:lhform.php

示例4: getRegisteredFilters

 /**
  * Gets all possible filter types
  *
  * @return array
  */
 static function getRegisteredFilters()
 {
     if (empty(self::$filtersTypes)) {
         foreach (filter_list() as $filter_name) {
             self::$filtersTypes[filter_id($filter_name)] = $filter_name;
         }
     }
     return self::$filtersTypes;
 }
开发者ID:phoebius,项目名称:proof-of-concept,代码行数:14,代码来源:Filter.class.php

示例5: generator_file

/**
 * Generates a unique file name in given path
 *
 * @param string $str
 * @param string $path
 *
 * @return string
 */
function generator_file(string $str, string $path) : string
{
    $parts = explode('.', $str);
    $ext = array_pop($parts);
    $str = filter_id(implode('-', $parts));
    if (file_exists($path . '/' . $str . '.' . $ext)) {
        $str .= '-';
        for ($i = 1; file_exists($path . '/' . $str . $i . '.' . $ext); $i++) {
        }
        $str .= $i;
    }
    return $str . '.' . $ext;
}
开发者ID:akilli,项目名称:qnd,代码行数:21,代码来源:generator.php

示例6: get

 /**
  * @param string $name
  * @param int $filter
  * @param array|null $options
  * @return mixed
  */
 public function get($name, $filter = FILTER_DEFAULT, $options = null)
 {
     if (is_string($filter)) {
         $filter = filter_id($filter);
     }
     if ($this->data !== null) {
         if (array_key_exists($name, $this->data)) {
             $value = filter_var($this->data[$name], $filter, $options);
         } else {
             $value = $this->optionFlags($options) & FILTER_NULL_ON_FAILURE ? false : null;
         }
     } else {
         $value = filter_input($this->type, $name, $filter, $options);
     }
     return $value;
 }
开发者ID:rakorium,项目名称:okapi,代码行数:22,代码来源:Source.php

示例7: __construct

	public function __construct($reqArgs, Array $sieve) {    
		$valueArr = array_merge($_GET, $_POST, $reqArgs);        

		foreach ($valueArr as $k => $v) {       			
			if (isset($sieve[$k])) {
				$this->_gpVars[$k]['value'] = filter_var($valueArr[$k], filter_id($sieve[$k]));  
				$this->_gpVars[$k]['sieved'] = true; 
			} 
			$this->_gpVars[$k]['value'] = $v;			
			unset($sieve[$k]);
		}               
 
		if (0 !== count(array_keys($sieve))) {
			throw new \Exception("Expected params were not given.");
		}
	}
开发者ID:nforgerit,项目名称:upstream,代码行数:16,代码来源:Sanitizer.php

示例8: filter

 /**
  * 使用filter_var方式验证
  * @access protected
  * @param mixed $value  字段值
  * @param mixed $rule  验证规则
  * @return bool
  */
 protected function filter($value, $rule)
 {
     if (is_string($rule) && strpos($rule, ',')) {
         list($rule, $param) = explode(',', $rule);
     } elseif (is_array($rule)) {
         $param = isset($rule[1]) ? $rule[1] : null;
     } else {
         $param = null;
     }
     return false !== filter_var($value, is_int($rule) ? $rule : filter_id($rule), $param);
 }
开发者ID:livingvirus,项目名称:cyfthink,代码行数:18,代码来源:Validate.php

示例9: filterPHP

 public function filterPHP($options)
 {
     if (!count($options)) {
         throw new \RuntimeException('Missing mandatory option: filter name');
     }
     $name = $options[0];
     return function (&$field) use($name) {
         if ($field !== '') {
             $filtered = filter_var($field, filter_id($name));
             if ($filtered === FALSE) {
                 return FALSE;
             }
             $field = $filtered;
         }
         return TRUE;
     };
 }
开发者ID:pixel418,项目名称:eloq,代码行数:17,代码来源:FormInputFilter.php

示例10: filter

 /**
  * 递归过滤给定的值
  * @param mixed $value 键值
  * @param mixed $key 键名
  * @param array $filters 过滤方法+默认值
  * @return mixed
  */
 private static function filter(&$value, $key, $filters)
 {
     // 分离出默认值
     $default = array_pop($filters);
     foreach ($filters as $filter) {
         if (is_callable($filter)) {
             // 调用函数过滤
             $value = call_user_func($filter, $value);
         } else {
             $begin = substr($filter, 0, 1);
             if (in_array($begin, ['/', '#', '~']) && $begin == ($end = substr($filter, -1))) {
                 // 正则过滤
                 if (!preg_match($filter, $value)) {
                     // 匹配不成功返回默认值
                     $value = $default;
                     break;
                 }
             } else {
                 // filter函数不存在时, 则使用filter_var进行过滤
                 // filter为非整形值时, 调用filter_id取得过滤id
                 $value = filter_var($value, is_int($filter) ? $filter : filter_id($filter));
                 if (false === $value) {
                     // 不通过过滤器则返回默认值
                     $value = $default;
                     break;
                 }
             }
         }
     }
     self::filterExp($value);
 }
开发者ID:Tong12,项目名称:think,代码行数:38,代码来源:Input.php

示例11: getData

 /**
  * 获取系统变量 支持过滤和默认值
  * @access   public
  *
  * @param $name
  * @param $input
  * @param $filter
  * @param $default
  *
  * @return mixed
  * @internal param string $method 输入数据类型
  * @internal param array $args 参数 [key,filter,default]
  */
 private static function getData($name, $input, $filter, $default)
 {
     if (strpos($name, '/')) {
         // 指定修饰符
         list($name, $type) = explode('/', $name, 2);
     } else {
         // 默认强制转换为字符串
         $type = 's';
     }
     $filters = isset($filter) ? $filter : self::$filter;
     if ('' == $name) {
         // 获取全部变量
         $data = $input;
         if ($filters) {
             if (is_string($filters)) {
                 $filters = explode(',', $filters);
             }
             foreach ($filters as $filter) {
                 $data = self::filter($filter, $data);
                 // 参数过滤
             }
         }
     } elseif (isset($input[$name])) {
         // 取值操作
         $data = $input[$name];
         if ($filters) {
             if (is_string($filters)) {
                 if (0 === strpos($filters, '/')) {
                     if (1 !== preg_match($filters, (string) $data)) {
                         // 支持正则验证
                         return $default;
                     }
                 } else {
                     $filters = explode(',', $filters);
                 }
             } elseif (is_int($filters)) {
                 $filters = [$filters];
             }
             if (is_array($filters)) {
                 foreach ($filters as $filter) {
                     if (function_exists($filter)) {
                         $data = is_array($data) ? self::filter($filter, $data) : $filter($data);
                         // 参数过滤
                     } else {
                         $data = filter_var($data, is_int($filter) ? $filter : filter_id($filter));
                         if (false === $data) {
                             return $default;
                         }
                     }
                 }
             }
         }
         if (!empty($type)) {
             switch (strtolower($type)) {
                 case 'a':
                     // 数组
                     $data = (array) $data;
                     break;
                 case 'd':
                     // 数字
                     $data = (int) $data;
                     break;
                 case 'f':
                     // 浮点
                     $data = (double) $data;
                     break;
                 case 'b':
                     // 布尔
                     $data = (bool) $data;
                     break;
                 case 's':
                     // 字符串
                 // 字符串
                 default:
                     $data = (string) $data;
             }
         }
     } else {
         // 变量默认值
         $data = $default;
     }
     is_array($data) && array_walk_recursive($data, 'self::filterExp');
     return $data;
 }
开发者ID:guozqiu,项目名称:think,代码行数:97,代码来源:input.php

示例12: applyFilter

 /**
  * @param mixed $value
  * @param array $spec
  * @return boolean
  */
 protected function applyFilter($value, $spec)
 {
     $result = true;
     $filter = $spec['filter'];
     //
     if (is_callable($filter)) {
         $result = $filter($value, $this->filterOptions($spec));
     } elseif (is_numeric($filter)) {
         $result = filter_var($value, $filter, $this->filterOptions($spec));
     } elseif (is_string($filter)) {
         $id = filter_id($filter);
         if ($id === false) {
             $result = false;
             $spec['message'] = "Unknown filter '{$filter}'";
         } else {
             $result = filter_var($value, $id, $this->filterOptions($spec));
         }
     } else {
         $result = false;
     }
     return $result;
 }
开发者ID:rakorium,项目名称:okapi,代码行数:27,代码来源:Input.php

示例13: I


//.........这里部分代码省略.........
    if (strpos($name, '.')) {
        // 指定参数来源
        list($method, $name) = explode('.', $name, 2);
    } else {
        // 默认为自动判断
        $method = 'param';
    }
    switch (strtolower($method)) {
        case 'get':
            $input =& $_GET;
            break;
        case 'post':
            $input =& $_POST;
            break;
        case 'put':
            parse_str(file_get_contents('php://input'), $input);
            break;
        case 'param':
            switch ($_SERVER['REQUEST_METHOD']) {
                case 'POST':
                    $input = $_POST;
                    break;
                case 'PUT':
                    parse_str(file_get_contents('php://input'), $input);
                    break;
                default:
                    $input = $_GET;
            }
            break;
        case 'path':
            $input = array();
            if (!empty($_SERVER['PATH_INFO'])) {
                $depr = C('URL_PATHINFO_DEPR');
                $input = explode($depr, trim($_SERVER['PATH_INFO'], $depr));
            }
            break;
        case 'request':
            $input =& $_REQUEST;
            break;
        case 'session':
            $input =& $_SESSION;
            break;
        case 'cookie':
            $input =& $_COOKIE;
            break;
        case 'server':
            $input =& $_SERVER;
            break;
        case 'globals':
            $input =& $GLOBALS;
            break;
        case 'data':
            $input =& $datas;
            break;
        default:
            return NULL;
    }
    if ('' == $name) {
        // 获取全部变量
        $data = $input;
        array_walk_recursive($data, 'filter_exp');
        $filters = isset($filter) ? $filter : C('DEFAULT_FILTER');
        if ($filters) {
            if (is_string($filters)) {
                $filters = explode(',', $filters);
            }
            foreach ($filters as $filter) {
                $data = array_map_recursive($filter, $data);
                // 参数过滤
            }
        }
    } elseif (isset($input[$name])) {
        // 取值操作
        $data = $input[$name];
        is_array($data) && array_walk_recursive($data, 'filter_exp');
        $filters = isset($filter) ? $filter : C('DEFAULT_FILTER');
        if ($filters) {
            if (is_string($filters)) {
                $filters = explode(',', $filters);
            } elseif (is_int($filters)) {
                $filters = array($filters);
            }
            foreach ($filters as $filter) {
                if (function_exists($filter)) {
                    $data = is_array($data) ? array_map_recursive($filter, $data) : $filter($data);
                    // 参数过滤
                } else {
                    $data = filter_var($data, is_int($filter) ? $filter : filter_id($filter));
                    if (false === $data) {
                        return isset($default) ? $default : NULL;
                    }
                }
            }
        }
    } else {
        // 变量默认值
        $data = isset($default) ? $default : NULL;
    }
    return $data;
}
开发者ID:terrydeng,项目名称:beimeibang1205,代码行数:101,代码来源:functions+-+Copy.php

示例14: filterValue

 /**
  * Filters a value according to filter, filter_id and options
  *
  * @param mixed     $value
  * @param mixed     $filter
  * @param int       $filterId
  * @param mixed     $options
  * @return mixed
  */
 protected function filterValue($value, $filter, $filterId, $options)
 {
     if (!$filter && !$filterId) {
         return $value;
     }
     if (null === $filterId && is_string($filter)) {
         $filterId = is_string($filter) ? filter_id($filter) : null;
     }
     if ($filterId) {
         if (null === $options) {
             $value = filter_var($value, $filterId);
         } else {
             $value = filter_var($value, $filterId, array('options' => $options));
         }
     } elseif (is_callable($filter)) {
         $value = call_user_func($filter, $value);
     }
     return $value;
 }
开发者ID:Andyyang1981,项目名称:pi,代码行数:28,代码来源:Config.php

示例15: id

 public function id(string $filterName) : int
 {
     return filter_id($filterName);
 }
开发者ID:znframework,项目名称:znframework,代码行数:4,代码来源:InternalFilters.php


注:本文中的filter_id函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。