Procházet zdrojové kódy

[php] Add externs for the IDN functions (#9927)

* [php] Add externs for the Intl constants

* [php] Add extern for the `checkdnsrr()` function

* [php] Add externs for the IDN functions

* [php] Fix the whitespace

* [php] Add extern for the `dns_get_record()` function

* [php] Fix the whitespace
Cédric Belin před 4 roky
rodič
revize
763c922635
2 změnil soubory, kde provedl 65 přidání a 0 odebrání
  1. 44 0
      std/php/Const.hx
  2. 21 0
      std/php/Global.hx

+ 44 - 0
std/php/Const.hx

@@ -477,4 +477,48 @@ extern class Const {
 	static final PATHINFO_DIRNAME:Int;
 	static final PATHINFO_EXTENSION:Int;
 	static final PATHINFO_FILENAME:Int;
+
+	/**
+		@see http://php.net/manual/en/function.dns-get-record.php
+	**/
+	static final DNS_A:Int;
+	static final DNS_AAAA:Int;
+	static final DNS_ALL:Int;
+	static final DNS_ANY:Int;
+	static final DNS_CAA:Int;
+	static final DNS_CNAME:Int;
+	static final DNS_HINFO:Int;
+	static final DNS_MX:Int;
+	static final DNS_NS:Int;
+	static final DNS_PTR:Int;
+	static final DNS_SOA:Int;
+	static final DNS_TXT:Int;
+
+	/**
+		@see http://php.net/manual/en/intl.constants.php
+	**/
+	static final IDNA_ALLOW_UNASSIGNED:Int;
+	static final IDNA_CHECK_BIDI:Int;
+	static final IDNA_CHECK_CONTEXTJ:Int;
+	static final IDNA_DEFAULT:Int;
+	static final IDNA_ERROR_BIDI:Int;
+	static final IDNA_ERROR_CONTEXTJ:Int;
+	static final IDNA_ERROR_DISALLOWED:Int;
+	static final IDNA_ERROR_DOMAIN_NAME_TOO_LONG:Int;
+	static final IDNA_ERROR_EMPTY_LABEL:Int;
+	static final IDNA_ERROR_HYPHEN_3_4:Int;
+	static final IDNA_ERROR_INVALID_ACE_LABEL:Int;
+	static final IDNA_ERROR_LABEL_HAS_DOT:Int;
+	static final IDNA_ERROR_LABEL_TOO_LONG:Int;
+	static final IDNA_ERROR_LEADING_COMBINING_MARK:Int;
+	static final IDNA_ERROR_LEADING_HYPHEN:Int;
+	static final IDNA_ERROR_PUNYCODE:Int;
+	static final IDNA_ERROR_TRAILING_HYPHEN:Int;
+	static final IDNA_NONTRANSITIONAL_TO_ASCII:Int;
+	static final IDNA_NONTRANSITIONAL_TO_UNICODE:Int;
+	static final IDNA_USE_STD3_RULES:Int;
+	static final INTL_ICU_VERSION:String;
+	static final INTL_IDNA_VARIANT_2003:Int;
+	static final INTL_IDNA_VARIANT_UTS46:Int;
+	static final INTL_MAX_LOCALE_LEN:Int;
 }

+ 21 - 0
std/php/Global.hx

@@ -1762,4 +1762,25 @@ extern class Global {
 		@see http://php.net/manual/en/function.touch.php
 	**/
 	static function touch(filename:String, ?time:Int, ?atime: Int):Bool;
+
+	/**
+		@see http://php.net/manual/en/function.checkdnsrr.php
+	**/
+	static function checkdnsrr(host:String, type:String = "MX"):Bool;
+
+	/**
+		@see http://php.net/manual/en/function.dns-get-record.php
+	**/
+	static function dns_get_record(hostname:String, ?type:Int, ?authns:Ref<NativeIndexedArray<NativeAssocArray<Dynamic>>>,
+		?addtl:Ref<NativeIndexedArray<NativeAssocArray<Dynamic>>>, raw:Bool = false):EitherType<NativeIndexedArray<NativeAssocArray<Dynamic>>, Bool>;
+
+	/**
+		@see http://php.net/manual/en/function.idn-to-ascii.php
+	**/
+	static function idn_to_ascii(domain:String, ?options:Int, ?variant:Int, ?idna_info:Ref<NativeAssocArray<Dynamic>>):EitherType<String, Bool>;
+
+	/**
+		@see http://php.net/manual/en/function.idn-to-utf8.php
+	**/
+	static function idn_to_utf8(domain:String, ?options:Int, ?variant:Int, ?idna_info:Ref<NativeAssocArray<Dynamic>>):EitherType<String, Bool>;
 }