/
test2.php
127 lines (127 loc) · 1.95 KB
/
test2.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<?php
//echo 'hello world';
const E=2.71828;
class Obj
{
public $name;
public $age;
const PI=3.141592653;
public function __construct($n,$a)
{
$this->name=$n;
$this->age=$a;
}
public function say()
{
echo <<<HERE
name:$this->name
age:$this->age
HERE;
}
public function __destruct()
{
//echo self::PI;
echo "\n".self::PI."destruct...";
}
}
$obj=new Obj("hello",20);
$obj->say();
echo Obj::PI;
//echo E;
function abc($n)
{
if($n<=1)
return 1;
else
return $n+abc($n-1);
}
echo "\n".abc(10);
$abc="hello";
function globalAndStatic()
{
global $abc;
echo $abc;
}
globalAndStatic();
function abc2($n)
{
static $sum=0;
if($n<1)
return ;
else
{
$sum+=$n;
abc2($n-1);
}
return $sum;
}
echo abc2(10);
class A
{
public $name="A Name";
public function __construct()
{
echo "\nConstruct A...\n";
}
}
class B extends A
{
public static $sprop="static property";
public function __construct()
{
echo "\nConstruct B...\n";
echo $this->name;
parent::__construct();
}
public static function sMethod()
{
echo self::$sprop;
}
public function say()
{
echo $this->name;
echo self::$sprop;
self::sMethod();
}
}
$a=new B();
$a->say();
echo "\n*******************\n";
echo B::$sprop;
B::sMethod();
echo $a::$sprop;
echo $a::sMethod();
abstract class AA
{
public abstract function say();
}
class BB extends AA
{
public function say()
{
echo "BB...";
}
}
$a=new BB();
$a->say();
interface AAA
{
public function say();
const cProp="hello";
}
class BBB implements AAA
{
public function say()
{
echo " say in BBB...";
echo self::bCProp;
}
const bCProp="world";
}
$a=new BBB();
$a->say();
echo <<<'NOW'
123456789\n0
!@#$%^&*()
qwertyuiopasdfghjklzxcvbnm,./
NOW;