Browse Source

[php] Add externs for the `filter_XXX()` functions (#10050)

Cédric Belin 4 years ago
parent
commit
0075ebc157
2 changed files with 86 additions and 0 deletions
  1. 61 0
      std/php/Const.hx
  2. 25 0
      std/php/Global.hx

+ 61 - 0
std/php/Const.hx

@@ -543,4 +543,65 @@ extern class Const {
 	static final SORT_NUMERIC:Int;
 	static final SORT_REGULAR:Int;
 	static final SORT_STRING:Int;
+
+	/**
+		@see http://php.net/manual/en/filter.constants.php
+	**/
+	static final FILTER_CALLBACK:Int;
+	static final FILTER_DEFAULT:Int;
+	static final FILTER_FLAG_ALLOW_FRACTION:Int;
+	static final FILTER_FLAG_ALLOW_HEX:Int;
+	static final FILTER_FLAG_ALLOW_OCTAL:Int;
+	static final FILTER_FLAG_ALLOW_SCIENTIFIC:Int;
+	static final FILTER_FLAG_ALLOW_THOUSAND:Int;
+	static final FILTER_FLAG_EMAIL_UNICODE:Int;
+	static final FILTER_FLAG_EMPTY_STRING_NULL:Int;
+	static final FILTER_FLAG_ENCODE_AMP:Int;
+	static final FILTER_FLAG_ENCODE_HIGH:Int;
+	static final FILTER_FLAG_ENCODE_LOW:Int;
+	static final FILTER_FLAG_HOST_REQUIRED:Int;
+	static final FILTER_FLAG_HOSTNAME:Int;
+	static final FILTER_FLAG_IPV4:Int;
+	static final FILTER_FLAG_IPV6:Int;
+	static final FILTER_FLAG_NO_ENCODE_QUOTES:Int;
+	static final FILTER_FLAG_NO_PRIV_RANGE:Int;
+	static final FILTER_FLAG_NO_RES_RANGE:Int;
+	static final FILTER_FLAG_NONE:Int;
+	static final FILTER_FLAG_PATH_REQUIRED:Int;
+	static final FILTER_FLAG_QUERY_REQUIRED:Int;
+	static final FILTER_FLAG_SCHEME_REQUIRED:Int;
+	static final FILTER_FLAG_STRIP_BACKTICK:Int;
+	static final FILTER_FLAG_STRIP_HIGH:Int;
+	static final FILTER_FLAG_STRIP_LOW:Int;
+	static final FILTER_FORCE_ARRAY:Int;
+	static final FILTER_NULL_ON_FAILURE:Int;
+	static final FILTER_REQUIRE_ARRAY:Int;
+	static final FILTER_REQUIRE_SCALAR:Int;
+	static final FILTER_SANITIZE_ADD_SLASHES:Int;
+	static final FILTER_SANITIZE_EMAIL:Int;
+	static final FILTER_SANITIZE_ENCODED:Int;
+	static final FILTER_SANITIZE_MAGIC_QUOTES:Int;
+	static final FILTER_SANITIZE_NUMBER_FLOAT:Int;
+	static final FILTER_SANITIZE_NUMBER_INT:Int;
+	static final FILTER_SANITIZE_SPECIAL_CHARS:Int;
+	static final FILTER_SANITIZE_STRING:Int;
+	static final FILTER_SANITIZE_STRIPPED:Int;
+	static final FILTER_SANITIZE_URL:Int;
+	static final FILTER_UNSAFE_RAW:Int;
+	static final FILTER_VALIDATE_BOOLEAN:Int;
+	static final FILTER_VALIDATE_DOMAIN:Int;
+	static final FILTER_VALIDATE_EMAIL:Int;
+	static final FILTER_VALIDATE_FLOAT:Int;
+	static final FILTER_VALIDATE_INT:Int;
+	static final FILTER_VALIDATE_IP:Int;
+	static final FILTER_VALIDATE_MAC:Int;
+	static final FILTER_VALIDATE_REGEXP:Int;
+	static final FILTER_VALIDATE_URL:Int;
+	static final INPUT_COOKIE:Int;
+	static final INPUT_ENV:Int;
+	static final INPUT_GET:Int;
+	static final INPUT_POST:Int;
+	static final INPUT_REQUEST:Int;
+	static final INPUT_SERVER:Int;
+	static final INPUT_SESSION:Int;
 }

+ 25 - 0
std/php/Global.hx

@@ -1808,4 +1808,29 @@ extern class Global {
 		@see http://php.net/manual/en/function.intl-is-failure.php
 	**/
 	static function intl_is_failure(error_code:Int):Bool;
+
+	/**
+		@see http://php.net/manual/en/function.filter-has-var.php
+	**/
+	static function filter_has_var(input_type:Int, var_name:String):Bool;
+
+	/**
+		@see http://php.net/manual/en/function.filter-id.php
+	**/
+	static function filter_id(name:String):EitherType<Int, Bool>;
+
+	/**
+		@see http://php.net/manual/en/function.filter-input.php
+	**/
+	static function filter_input(type:Int, var_name:String, ?filter:Int, ?options: EitherType<NativeAssocArray<Dynamic>, Int>):Dynamic;
+
+	/**
+		@see http://php.net/manual/en/function.filter-list.php
+	**/
+	static function filter_list():NativeIndexedArray<String>;
+
+	/**
+		@see http://php.net/manual/en/function.filter-var.php
+	**/
+	static function filter_var(value: Any, ?filter:Int, ?options: EitherType<NativeAssocArray<Dynamic>, Int>):Dynamic;
 }