xml_set_object_variation1.phpt 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240
  1. --TEST--
  2. Test xml_set_object() function : usage variations
  3. --SKIPIF--
  4. <?php
  5. if (!extension_loaded("xml")) {
  6. print "skip - XML extension not loaded";
  7. }
  8. ?>
  9. --FILE--
  10. <?php
  11. /* Prototype : proto int xml_set_object(resource parser, object &obj)
  12. * Description: Set up object which should be used for callbacks
  13. * Source code: ext/xml/xml.c
  14. * Alias to functions:
  15. */
  16. echo "*** Testing xml_set_object() : usage variations ***\n";
  17. error_reporting(E_ALL & ~E_NOTICE);
  18. class aClass {
  19. function __toString() {
  20. return "Some Ascii Data";
  21. }
  22. }
  23. // Initialise function arguments not being substituted (if any)
  24. $obj = new aClass();
  25. //get an unset variable
  26. $unset_var = 10;
  27. unset ($unset_var);
  28. $fp = fopen(__FILE__, "r");
  29. //array of values to iterate over
  30. $values = array(
  31. // int data
  32. 0,
  33. 1,
  34. 12345,
  35. -2345,
  36. // float data
  37. 10.5,
  38. -10.5,
  39. 10.1234567e10,
  40. 10.7654321E-10,
  41. .5,
  42. // array data
  43. array(),
  44. array(0),
  45. array(1),
  46. array(1, 2),
  47. array('color' => 'red', 'item' => 'pen'),
  48. // null data
  49. NULL,
  50. null,
  51. // boolean data
  52. true,
  53. false,
  54. TRUE,
  55. FALSE,
  56. // empty data
  57. "",
  58. '',
  59. // string data
  60. "string",
  61. 'string',
  62. // object data
  63. new aClass(),
  64. // resource data
  65. $fp,
  66. // undefined data
  67. $undefined_var,
  68. // unset data
  69. $unset_var,
  70. );
  71. // loop through each element of the array for parser
  72. foreach($values as $value) {
  73. echo @"\nArg value $value \n";
  74. var_dump( xml_set_object($value, $obj) );
  75. };
  76. fclose($fp);
  77. echo "Done";
  78. ?>
  79. --EXPECTF--
  80. *** Testing xml_set_object() : usage variations ***
  81. Arg value 0
  82. Warning: xml_set_object() expects parameter 1 to be resource, int given in %s on line %d
  83. NULL
  84. Arg value 1
  85. Warning: xml_set_object() expects parameter 1 to be resource, int given in %s on line %d
  86. NULL
  87. Arg value 12345
  88. Warning: xml_set_object() expects parameter 1 to be resource, int given in %s on line %d
  89. NULL
  90. Arg value -2345
  91. Warning: xml_set_object() expects parameter 1 to be resource, int given in %s on line %d
  92. NULL
  93. Arg value 10.5
  94. Warning: xml_set_object() expects parameter 1 to be resource, float given in %s on line %d
  95. NULL
  96. Arg value -10.5
  97. Warning: xml_set_object() expects parameter 1 to be resource, float given in %s on line %d
  98. NULL
  99. Arg value 101234567000
  100. Warning: xml_set_object() expects parameter 1 to be resource, float given in %s on line %d
  101. NULL
  102. Arg value 1.07654321E-9
  103. Warning: xml_set_object() expects parameter 1 to be resource, float given in %s on line %d
  104. NULL
  105. Arg value 0.5
  106. Warning: xml_set_object() expects parameter 1 to be resource, float given in %s on line %d
  107. NULL
  108. Arg value Array
  109. Warning: xml_set_object() expects parameter 1 to be resource, array given in %s on line %d
  110. NULL
  111. Arg value Array
  112. Warning: xml_set_object() expects parameter 1 to be resource, array given in %s on line %d
  113. NULL
  114. Arg value Array
  115. Warning: xml_set_object() expects parameter 1 to be resource, array given in %s on line %d
  116. NULL
  117. Arg value Array
  118. Warning: xml_set_object() expects parameter 1 to be resource, array given in %s on line %d
  119. NULL
  120. Arg value Array
  121. Warning: xml_set_object() expects parameter 1 to be resource, array given in %s on line %d
  122. NULL
  123. Arg value
  124. Warning: xml_set_object() expects parameter 1 to be resource, null given in %s on line %d
  125. NULL
  126. Arg value
  127. Warning: xml_set_object() expects parameter 1 to be resource, null given in %s on line %d
  128. NULL
  129. Arg value 1
  130. Warning: xml_set_object() expects parameter 1 to be resource, bool given in %s on line %d
  131. NULL
  132. Arg value
  133. Warning: xml_set_object() expects parameter 1 to be resource, bool given in %s on line %d
  134. NULL
  135. Arg value 1
  136. Warning: xml_set_object() expects parameter 1 to be resource, bool given in %s on line %d
  137. NULL
  138. Arg value
  139. Warning: xml_set_object() expects parameter 1 to be resource, bool given in %s on line %d
  140. NULL
  141. Arg value
  142. Warning: xml_set_object() expects parameter 1 to be resource, string given in %s on line %d
  143. NULL
  144. Arg value
  145. Warning: xml_set_object() expects parameter 1 to be resource, string given in %s on line %d
  146. NULL
  147. Arg value string
  148. Warning: xml_set_object() expects parameter 1 to be resource, string given in %s on line %d
  149. NULL
  150. Arg value string
  151. Warning: xml_set_object() expects parameter 1 to be resource, string given in %s on line %d
  152. NULL
  153. Arg value Some Ascii Data
  154. Warning: xml_set_object() expects parameter 1 to be resource, object given in %s on line %d
  155. NULL
  156. Arg value Resource id %s
  157. Warning: xml_set_object(): supplied resource is not a valid XML Parser resource in %s on line %d
  158. bool(false)
  159. Arg value
  160. Warning: xml_set_object() expects parameter 1 to be resource, null given in %s on line %d
  161. NULL
  162. Arg value
  163. Warning: xml_set_object() expects parameter 1 to be resource, null given in %s on line %d
  164. NULL
  165. Done