xref: /PHP-7.1/Zend/tests/settype_array.phpt (revision 7af945e2)
1--TEST--
2casting different variables to array using settype()
3--FILE--
4<?php
5
6$r = fopen(__FILE__, "r");
7
8class test {
9	private $var1 = 1;
10	public $var2 = 2;
11	protected $var3 = 3;
12
13	function  __toString() {
14		return "10";
15	}
16}
17
18$o = new test;
19
20$vars = array(
21	"string",
22	"",
23	"\0",
24	"8754456",
25	9876545,
26	0.10,
27	array(),
28	array(1,2,3),
29	false,
30	true,
31	NULL,
32	$r,
33	$o
34);
35
36foreach ($vars as $var) {
37	settype($var, "array");
38	var_dump($var);
39}
40
41echo "Done\n";
42?>
43--EXPECTF--
44array(1) {
45  [0]=>
46  string(6) "string"
47}
48array(1) {
49  [0]=>
50  string(0) ""
51}
52array(1) {
53  [0]=>
54  string(1) "�"
55}
56array(1) {
57  [0]=>
58  string(7) "8754456"
59}
60array(1) {
61  [0]=>
62  int(9876545)
63}
64array(1) {
65  [0]=>
66  float(0.1)
67}
68array(0) {
69}
70array(3) {
71  [0]=>
72  int(1)
73  [1]=>
74  int(2)
75  [2]=>
76  int(3)
77}
78array(1) {
79  [0]=>
80  bool(false)
81}
82array(1) {
83  [0]=>
84  bool(true)
85}
86array(0) {
87}
88array(1) {
89  [0]=>
90  resource(%d) of type (stream)
91}
92array(3) {
93  ["�test�var1"]=>
94  int(1)
95  ["var2"]=>
96  int(2)
97  ["�*�var3"]=>
98  int(3)
99}
100Done
101