indexing_001.phpt 3.3 KB

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