indexing_001.phpt 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. --TEST--
  2. Indexing - various special cases.
  3. --FILE--
  4. <?php
  5. echo "*** Indexing - Testing value assignment with key ***\n";
  6. $array=array(1);
  7. $testvalues=array(null, 0, 1, true, false,'',' ',0.1,array());
  8. foreach ($testvalues as $testvalue) {
  9. $testvalue['foo']=$array;
  10. var_dump ($testvalue);
  11. }
  12. echo "\n*** Indexing - Testing reference assignment with key ***\n";
  13. $testvalues=array(null, 0, 1, true, false,'',0.1,array());
  14. foreach ($testvalues as $testvalue) {
  15. $testvalue['foo']=&$array;
  16. var_dump ($testvalue);
  17. }
  18. echo "*** Indexing - Testing value assignment no key ***\n";
  19. $array=array(1);
  20. $testvalues=array(null, 0, 1, true, false,'',0.1,array());
  21. foreach ($testvalues as $testvalue) {
  22. $testvalue[]=$array;
  23. var_dump ($testvalue);
  24. }
  25. echo "\n*** Indexing - Testing reference assignment no key ***\n";
  26. $testvalues=array(null, 0, 1, true, false,'',0.1,array());
  27. foreach ($testvalues as $testvalue) {
  28. $testvalue[]=&$array;
  29. var_dump ($testvalue);
  30. }
  31. echo "\nDone";
  32. ?>
  33. --EXPECTF--
  34. *** Indexing - Testing value assignment with key ***
  35. array(1) {
  36. ["foo"]=>
  37. array(1) {
  38. [0]=>
  39. int(1)
  40. }
  41. }
  42. Warning: Cannot use a scalar value as an array in %s on line %d
  43. int(0)
  44. Warning: Cannot use a scalar value as an array in %s on line %d
  45. int(1)
  46. Warning: Cannot use a scalar value as an array in %s on line %d
  47. bool(true)
  48. array(1) {
  49. ["foo"]=>
  50. array(1) {
  51. [0]=>
  52. int(1)
  53. }
  54. }
  55. array(1) {
  56. ["foo"]=>
  57. array(1) {
  58. [0]=>
  59. int(1)
  60. }
  61. }
  62. Warning: Illegal string offset 'foo' in %s on line %d
  63. Notice: Array to string conversion in %s on line %d
  64. string(1) "A"
  65. Warning: Cannot use a scalar value as an array in %s on line %d
  66. float(0.1)
  67. array(1) {
  68. ["foo"]=>
  69. array(1) {
  70. [0]=>
  71. int(1)
  72. }
  73. }
  74. *** Indexing - Testing reference assignment with key ***
  75. array(1) {
  76. ["foo"]=>
  77. &array(1) {
  78. [0]=>
  79. int(1)
  80. }
  81. }
  82. Warning: Cannot use a scalar value as an array in %s on line %d
  83. int(0)
  84. Warning: Cannot use a scalar value as an array in %s on line %d
  85. int(1)
  86. Warning: Cannot use a scalar value as an array in %s on line %d
  87. bool(true)
  88. array(1) {
  89. ["foo"]=>
  90. &array(1) {
  91. [0]=>
  92. int(1)
  93. }
  94. }
  95. array(1) {
  96. ["foo"]=>
  97. &array(1) {
  98. [0]=>
  99. int(1)
  100. }
  101. }
  102. Warning: Cannot use a scalar value as an array in %s on line %d
  103. float(0.1)
  104. array(1) {
  105. ["foo"]=>
  106. &array(1) {
  107. [0]=>
  108. int(1)
  109. }
  110. }
  111. *** Indexing - Testing value assignment no key ***
  112. array(1) {
  113. [0]=>
  114. array(1) {
  115. [0]=>
  116. int(1)
  117. }
  118. }
  119. Warning: Cannot use a scalar value as an array in %s on line %d
  120. int(0)
  121. Warning: Cannot use a scalar value as an array in %s on line %d
  122. int(1)
  123. Warning: Cannot use a scalar value as an array in %s on line %d
  124. bool(true)
  125. array(1) {
  126. [0]=>
  127. array(1) {
  128. [0]=>
  129. int(1)
  130. }
  131. }
  132. array(1) {
  133. [0]=>
  134. array(1) {
  135. [0]=>
  136. int(1)
  137. }
  138. }
  139. Warning: Cannot use a scalar value as an array in %s on line %d
  140. float(0.1)
  141. array(1) {
  142. [0]=>
  143. array(1) {
  144. [0]=>
  145. int(1)
  146. }
  147. }
  148. *** Indexing - Testing reference assignment no key ***
  149. array(1) {
  150. [0]=>
  151. &array(1) {
  152. [0]=>
  153. int(1)
  154. }
  155. }
  156. Warning: Cannot use a scalar value as an array in %s on line %d
  157. int(0)
  158. Warning: Cannot use a scalar value as an array in %s on line %d
  159. int(1)
  160. Warning: Cannot use a scalar value as an array in %s on line %d
  161. bool(true)
  162. array(1) {
  163. [0]=>
  164. &array(1) {
  165. [0]=>
  166. int(1)
  167. }
  168. }
  169. array(1) {
  170. [0]=>
  171. &array(1) {
  172. [0]=>
  173. int(1)
  174. }
  175. }
  176. Warning: Cannot use a scalar value as an array in %s on line %d
  177. float(0.1)
  178. array(1) {
  179. [0]=>
  180. &array(1) {
  181. [0]=>
  182. int(1)
  183. }
  184. }
  185. Done