~ubuntu-branches/ubuntu/hardy/php5/hardy-updates

« back to all changes in this revision

Viewing changes to tests/lang/bug27439.phpt

  • Committer: Bazaar Package Importer
  • Author(s): Adam Conrad
  • Date: 2005-10-09 03:14:32 UTC
  • Revision ID: james.westby@ubuntu.com-20051009031432-kspik3lobxstafv9
Tags: upstream-5.0.5
ImportĀ upstreamĀ versionĀ 5.0.5

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
--TEST--
 
2
Bug #27439 (foreach() with $this segfaults)
 
3
--FILE--
 
4
<?php
 
5
 
 
6
class test_props {
 
7
        public $a = 1;
 
8
        public $b = 2;
 
9
        public $c = 3;
 
10
}
 
11
 
 
12
class test {
 
13
        public $array = array(1,2,3);
 
14
        public $string = "string";
 
15
 
 
16
        public function __construct() {
 
17
                $this->object = new test_props;
 
18
        }
 
19
 
 
20
        public function getArray() {
 
21
                return $this->array;
 
22
        }
 
23
 
 
24
        public function getString() {
 
25
                return $this->string;
 
26
        }
 
27
 
 
28
        public function case1() {
 
29
                foreach ($this->array as $foo) {
 
30
                        echo $foo;
 
31
                }
 
32
        }
 
33
 
 
34
        public function case2() {
 
35
                foreach ($this->foobar as $foo);
 
36
        }
 
37
 
 
38
        public function case3() {
 
39
                foreach ($this->string as $foo);
 
40
        }
 
41
 
 
42
        public function case4() {
 
43
                foreach ($this->getArray() as $foo);
 
44
        }
 
45
 
 
46
        public function case5() {
 
47
                foreach ($this->getString() as $foo);
 
48
        }
 
49
 
 
50
        public function case6() {
 
51
                foreach ($this->object as $foo) {
 
52
                        echo $foo;
 
53
                }
 
54
        }
 
55
}
 
56
$test = new test();
 
57
$test->case1();
 
58
$test->case2();
 
59
$test->case3();
 
60
$test->case4();
 
61
$test->case5();
 
62
$test->case6();
 
63
echo "\n";
 
64
echo "===DONE===";
 
65
?>
 
66
--EXPECTF--
 
67
123
 
68
Warning: Invalid argument supplied for foreach() in %s on line %d
 
69
 
 
70
Warning: Invalid argument supplied for foreach() in %s on line %d
 
71
 
 
72
Warning: Invalid argument supplied for foreach() in %s on line %d
 
73
123
 
74
===DONE===