PageRenderTime 53ms CodeModel.GetById 13ms RepoModel.GetById 0ms app.codeStats 0ms

/PHP/CompatInfo/Reference/xml.php

http://github.com/llaville/php-compat-info
PHP | 259 lines | 166 code | 13 blank | 80 comment | 32 complexity | d657567417ff2d568b03db3369c8cac3 MD5 | raw file
Possible License(s): BSD-3-Clause
  1. <?php
  2. /**
  3. * Version informations about xml extension
  4. *
  5. * PHP version 5
  6. *
  7. * @category PHP
  8. * @package PHP_CompatInfo
  9. * @author Laurent Laville <pear@laurent-laville.org>
  10. * @license http://www.opensource.org/licenses/bsd-license.php BSD License
  11. * @version SVN: $Id$
  12. * @link http://php5.laurent-laville.org/compatinfo/
  13. */
  14. /**
  15. * All interfaces, classes, functions, constants about xml extension
  16. *
  17. * @category PHP
  18. * @package PHP_CompatInfo
  19. * @author Laurent Laville <pear@laurent-laville.org>
  20. * @license http://www.opensource.org/licenses/bsd-license.php BSD License
  21. * @version Release: @package_version@
  22. * @link http://php5.laurent-laville.org/compatinfo/
  23. * @link http://www.php.net/manual/en/book.xml.php
  24. */
  25. class PHP_CompatInfo_Reference_Xml implements PHP_CompatInfo_Reference
  26. {
  27. /**
  28. * Gets all informations at once about:
  29. * extensions, interfaces, classes, functions, constants
  30. *
  31. * @param string $extension OPTIONAL
  32. * @param string $version OPTIONAL PHP version
  33. * (4 => only PHP4, 5 or null => PHP4 + PHP5)
  34. *
  35. * @return array
  36. */
  37. public function getAll($extension = null, $version = null)
  38. {
  39. $references = array(
  40. 'extensions' => $this->getExtensions($extension, $version),
  41. 'interfaces' => $this->getInterfaces($extension, $version),
  42. 'classes' => $this->getClasses($extension, $version),
  43. 'functions' => $this->getFunctions($extension, $version),
  44. 'constants' => $this->getConstants($extension, $version),
  45. );
  46. return $references;
  47. }
  48. /**
  49. * Gets informations about extensions
  50. *
  51. * @param string $extension OPTIONAL
  52. * @param string $version OPTIONAL PHP version
  53. * (4 => only PHP4, 5 or null => PHP4 + PHP5)
  54. *
  55. * @return array
  56. */
  57. public function getExtensions($extension = null, $version = null)
  58. {
  59. $extensions = array(
  60. 'xml' => array('4.0.0', '', '')
  61. );
  62. return $extensions;
  63. }
  64. /**
  65. * Gets informations about interfaces
  66. *
  67. * @param string $extension OPTIONAL
  68. * @param string $version OPTIONAL PHP version
  69. * (4 => only PHP4, 5 or null => PHP4 + PHP5)
  70. *
  71. * @return array
  72. */
  73. public function getInterfaces($extension = null, $version = null)
  74. {
  75. $interfaces = array();
  76. if ((null == $version ) || ('4' == $version)) {
  77. $version4 = array(
  78. );
  79. $interfaces = array_merge(
  80. $interfaces,
  81. $version4
  82. );
  83. }
  84. if ((null == $version ) || ('5' == $version)) {
  85. $version5 = array(
  86. );
  87. $interfaces = array_merge(
  88. $interfaces,
  89. $version5
  90. );
  91. }
  92. return $interfaces;
  93. }
  94. /**
  95. * Gets informations about classes
  96. *
  97. * @param string $extension OPTIONAL
  98. * @param string $version OPTIONAL PHP version
  99. * (4 => only PHP4, 5 or null => PHP4 + PHP5)
  100. *
  101. * @return array
  102. */
  103. public function getClasses($extension = null, $version = null)
  104. {
  105. $classes = array();
  106. if ((null == $version ) || ('4' == $version)) {
  107. $version4 = array(
  108. );
  109. $classes = array_merge(
  110. $classes,
  111. $version4
  112. );
  113. }
  114. if ((null == $version ) || ('5' == $version)) {
  115. $version5 = array(
  116. );
  117. $classes = array_merge(
  118. $classes,
  119. $version5
  120. );
  121. }
  122. return $classes;
  123. }
  124. /**
  125. * Gets informations about functions
  126. *
  127. * @param string $extension OPTIONAL
  128. * @param string $version OPTIONAL PHP version
  129. * (4 => only PHP4, 5 or null => PHP4 + PHP5)
  130. *
  131. * @return array
  132. * @link http://www.php.net/manual/en/ref.xml.php
  133. */
  134. public function getFunctions($extension = null, $version = null)
  135. {
  136. $functions = array();
  137. if ((null == $version ) || ('4' == $version)) {
  138. $version4 = array(
  139. 'utf8_encode' => array('4.0.0', ''),
  140. 'utf8_decode' => array('4.0.0', ''),
  141. 'xml_error_string' => array('4.0.0', ''),
  142. 'xml_get_current_byte_index' => array('4.0.0', ''),
  143. 'xml_get_current_column_number' => array('4.0.0', ''),
  144. 'xml_get_current_line_number' => array('4.0.0', ''),
  145. 'xml_get_error_code' => array('4.0.0', ''),
  146. 'xml_parse_into_struct' => array('4.0.0', ''),
  147. 'xml_parse' => array('4.0.0', ''),
  148. 'xml_parser_create_ns' => array('4.0.5', ''),
  149. 'xml_parser_create' => array('4.0.0', ''),
  150. 'xml_parser_free' => array('4.0.0', ''),
  151. 'xml_parser_get_option' => array('4.0.0', ''),
  152. 'xml_parser_set_option' => array('4.0.0', ''),
  153. 'xml_set_character_data_handler' => array('4.0.0', ''),
  154. 'xml_set_default_handler' => array('4.0.0', ''),
  155. 'xml_set_element_handler' => array('4.0.0', ''),
  156. 'xml_set_end_namespace_decl_handler'
  157. => array('4.0.5', ''),
  158. 'xml_set_external_entity_ref_handler'
  159. => array('4.0.0', ''),
  160. 'xml_set_notation_decl_handler' => array('4.0.0', ''),
  161. 'xml_set_object' => array('4.0.0', ''),
  162. 'xml_set_processing_instruction_handler'
  163. => array('4.0.0', ''),
  164. 'xml_set_start_namespace_decl_handler'
  165. => array('4.0.5', ''),
  166. 'xml_set_unparsed_entity_decl_handler'
  167. => array('4.0.0', ''),
  168. );
  169. $functions = array_merge(
  170. $functions,
  171. $version4
  172. );
  173. }
  174. if ((null == $version ) || ('5' == $version)) {
  175. $version5 = array(
  176. );
  177. $functions = array_merge(
  178. $functions,
  179. $version5
  180. );
  181. }
  182. return $functions;
  183. }
  184. /**
  185. * Gets informations about constants
  186. *
  187. * @param string $extension OPTIONAL
  188. * @param string $version OPTIONAL PHP version
  189. * (4 => only PHP4, 5 or null => PHP4 + PHP5)
  190. *
  191. * @return array
  192. * @link http://www.php.net/manual/en/xml.constants.php
  193. */
  194. public function getConstants($extension = null, $version = null)
  195. {
  196. $constants = array();
  197. if ((null == $version ) || ('4' == $version)) {
  198. $version4 = array(
  199. 'XML_ERROR_NONE' => array('4.0.0', ''),
  200. 'XML_ERROR_NO_MEMORY' => array('4.0.0', ''),
  201. 'XML_ERROR_SYNTAX' => array('4.0.0', ''),
  202. 'XML_ERROR_NO_ELEMENTS' => array('4.0.0', ''),
  203. 'XML_ERROR_INVALID_TOKEN' => array('4.0.0', ''),
  204. 'XML_ERROR_UNCLOSED_TOKEN' => array('4.0.0', ''),
  205. 'XML_ERROR_PARTIAL_CHAR' => array('4.0.0', ''),
  206. 'XML_ERROR_TAG_MISMATCH' => array('4.0.0', ''),
  207. 'XML_ERROR_DUPLICATE_ATTRIBUTE' => array('4.0.0', ''),
  208. 'XML_ERROR_JUNK_AFTER_DOC_ELEMENT'
  209. => array('4.0.0', ''),
  210. 'XML_ERROR_PARAM_ENTITY_REF' => array('4.0.0', ''),
  211. 'XML_ERROR_UNDEFINED_ENTITY' => array('4.0.0', ''),
  212. 'XML_ERROR_RECURSIVE_ENTITY_REF' => array('4.0.0', ''),
  213. 'XML_ERROR_ASYNC_ENTITY' => array('4.0.0', ''),
  214. 'XML_ERROR_BAD_CHAR_REF' => array('4.0.0', ''),
  215. 'XML_ERROR_BINARY_ENTITY_REF' => array('4.0.0', ''),
  216. 'XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF'
  217. => array('4.0.0', ''),
  218. 'XML_ERROR_MISPLACED_XML_PI' => array('4.0.0', ''),
  219. 'XML_ERROR_UNKNOWN_ENCODING' => array('4.0.0', ''),
  220. 'XML_ERROR_INCORRECT_ENCODING' => array('4.0.0', ''),
  221. 'XML_ERROR_UNCLOSED_CDATA_SECTION'
  222. => array('4.0.0', ''),
  223. 'XML_ERROR_EXTERNAL_ENTITY_HANDLING'
  224. => array('4.0.0', ''),
  225. 'XML_OPTION_CASE_FOLDING' => array('4.0.0', ''),
  226. 'XML_OPTION_TARGET_ENCODING' => array('4.0.0', ''),
  227. 'XML_OPTION_SKIP_TAGSTART' => array('4.0.0', ''),
  228. 'XML_OPTION_SKIP_WHITE' => array('4.0.0', ''),
  229. 'XML_SAX_IMPL' => array('4.0.0', ''),
  230. );
  231. $constants = array_merge(
  232. $constants,
  233. $version4
  234. );
  235. }
  236. if ((null == $version ) || ('5' == $version)) {
  237. $version5 = array(
  238. );
  239. $constants = array_merge(
  240. $constants,
  241. $version5
  242. );
  243. }
  244. return $constants;
  245. }
  246. }