Skip to content

Commit 4f2808a

Browse files
authored
Merge pull request #1 from fyzzy1943/fyzzy1943
php init
2 parents 7135f2a + e65a581 commit 4f2808a

File tree

1 file changed

+249
-0
lines changed

1 file changed

+249
-0
lines changed

languages/php.php

+249
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,249 @@
1+
<?php
2+
3+
/**
4+
* Class
5+
* http://php.net/manual/zh/language.oop5.basic.php
6+
*/
7+
class NormalClass extends AbstractClassName implements InterfaceName
8+
{
9+
10+
use TraitName;
11+
12+
// --> 类属性类型 <--
13+
14+
/**
15+
* 公有的类成员可以在任何地方被访问,会被继承。
16+
* @var Type
17+
*/
18+
public $property;
19+
20+
/**
21+
* 私有的类成员则只能被其定义所在的类访问,不会被继承。
22+
* @var Type
23+
*/
24+
private $property;
25+
26+
/**
27+
* 受保护的类成员则可以被其自身以及其子类和父类访问,会被继承。
28+
* @var Type
29+
*/
30+
protected $property;
31+
32+
/**
33+
* 静态变量,也被称为类变量,所有对象的变量都是同一个。
34+
* @var Type
35+
*/
36+
static $property;
37+
38+
// --> 方法类型 <--
39+
40+
/**
41+
* 公共方法,任何对象都能访问。
42+
* @param Type
43+
* @return Type
44+
*/
45+
public function publicFunction(Type $var = null): Type
46+
{
47+
}
48+
49+
/**
50+
* 私有方法,只有对象自身可以访问。
51+
* @param Type
52+
* @return Type
53+
*/
54+
private function privateFunction(Type $var = null): Type
55+
{
56+
}
57+
58+
/**
59+
* 保护方法,只有自身和子类可以访问。
60+
* @param Type
61+
* @return Type
62+
*/
63+
protected function protectedFunction(Type $var = null): Type
64+
{
65+
}
66+
67+
/**
68+
* 静态方法,可以在不实例化类的情况下执行。
69+
* @param Type
70+
* @return Type
71+
*/
72+
public static function staticFunction(Type $var = null): Type
73+
{
74+
}
75+
76+
// --> 魔术方法 <--
77+
78+
/**
79+
* 具有构造函数的类会在每次创建新对象时先调用此方法,所以非常适合在使用对象之前做一些初始化工作。
80+
* http://php.net/manual/zh/language.oop5.decon.php
81+
* @param Type
82+
* @return void
83+
*/
84+
public function __construct(Type $var = null)
85+
{
86+
}
87+
88+
/**
89+
* 析构函数会在到某个对象的所有引用都被删除或者当对象被显式销毁时执行。
90+
* http://php.net/manual/zh/language.oop5.decon.php
91+
* @return void
92+
*/
93+
public function __destruct()
94+
{
95+
}
96+
97+
/**
98+
* 在给不可访问属性赋值时,__set() 会被调用。
99+
* http://php.net/manual/zh/language.oop5.overloading.php
100+
* @param string name
101+
* @param mixed value
102+
* @return void
103+
*/
104+
public function __set(string $name , mixed $value)
105+
{
106+
}
107+
108+
/**
109+
* 读取不可访问属性的值时,__get() 会被调用。
110+
* http://php.net/manual/zh/language.oop5.overloading.php
111+
* @param string name
112+
* @return mixed
113+
*/
114+
public function __get(string $name)
115+
{
116+
}
117+
118+
/**
119+
* 当对不可访问属性调用 isset() 或 empty() 时,__isset() 会被调用。
120+
* http://php.net/manual/zh/language.oop5.overloading.php
121+
* @param string name
122+
* @return bool
123+
*/
124+
public function __isset(string $name)
125+
{
126+
}
127+
128+
/**
129+
* 当对不可访问属性调用 unset() 时,__unset() 会被调用。
130+
* http://php.net/manual/zh/language.oop5.overloading.php
131+
* @param string name
132+
* @return void
133+
*/
134+
public function __unset(string $name)
135+
{
136+
}
137+
138+
/**
139+
* 在对象中调用一个不可访问方法时,__call() 会被调用。
140+
* http://php.net/manual/zh/language.oop5.overloading.php
141+
* @param string name
142+
* @param array arguments
143+
* @return mixed
144+
*/
145+
public function __call(string $name, array $arguments)
146+
{
147+
}
148+
149+
/**
150+
* 在静态上下文中调用一个不可访问方法时,__callStatic() 会被调用。
151+
* http://php.net/manual/zh/language.oop5.overloading.php
152+
* @param string name
153+
* @param array arguments
154+
* @return mixed
155+
*/
156+
public static function __callStatic(string $name, array $arguments)
157+
{
158+
}
159+
160+
/**
161+
* serialize() 函数会检查类中是否存在一个魔术方法 __sleep()。
162+
* 如果存在,该方法会先被调用,然后才执行序列化操作。此功能可以用于清理对象,
163+
* 并返回一个包含对象中所有应被序列化的变量名称的数组。
164+
* 如果该方法未返回任何内容,则 NULL 被序列化,并产生一个 E_NOTICE 级别的错误。
165+
* http://php.net/manual/zh/language.oop5.magic.php#object.sleep
166+
* @return array
167+
*/
168+
public function __sleep()
169+
{
170+
}
171+
172+
/**
173+
* 与之相反,unserialize() 会检查是否存在一个 __wakeup() 方法。
174+
* 如果存在,则会先调用 __wakeup 方法,预先准备对象需要的资源。
175+
* http://php.net/manual/zh/language.oop5.magic.php#object.wakeup
176+
* @return void
177+
*/
178+
public function __wakeup()
179+
{
180+
}
181+
182+
/**
183+
* __toString() 方法用于一个类被当成字符串时应怎样回应。
184+
* 例如 echo $obj; 应该显示些什么。此方法必须返回一个字符串,
185+
* 否则将发出一条 E_RECOVERABLE_ERROR 级别的致命错误。
186+
* http://php.net/manual/zh/language.oop5.magic.php#object.tostring
187+
* @return string
188+
*/
189+
public function __toString()
190+
{
191+
}
192+
193+
/**
194+
* 当尝试以调用函数的方式调用一个对象时,__invoke() 方法会被自动调用。
195+
* http://php.net/manual/zh/language.oop5.magic.php#object.invoke
196+
* @param Type
197+
* @return mixed
198+
*/
199+
public function __invoke(Type $var = null)
200+
{
201+
}
202+
203+
/**
204+
* 自 PHP 5.1.0 起当调用 var_export() 导出类时,此静态 方法会被调用。
205+
* http://php.net/manual/zh/language.oop5.magic.php#object.set-state
206+
* @param array properties
207+
* @return object
208+
*/
209+
public static function __set_state(array $properties)
210+
{
211+
}
212+
213+
/**
214+
* 在使用 var_dump() 时,会被调用。
215+
* http://php.net/manual/zh/language.oop5.magic.php#object.debuginfo
216+
* @return array
217+
*/
218+
public function __debugInfo()
219+
{
220+
}
221+
222+
}
223+
224+
/**
225+
* 接口
226+
* 任何实现接口的类,都必须实现接口中的方法。
227+
*/
228+
interface InterfaceName
229+
{
230+
231+
public function FunctionName(Type $var = null): Type;
232+
233+
}
234+
235+
/**
236+
* 抽象类
237+
* 抽象类中可以包含普通方法,和抽象方法。
238+
*/
239+
abstract class AbstractClassName
240+
{
241+
242+
/**
243+
* 继承本抽象类的类,必须实现抽象方法。
244+
* @param Type
245+
* @return Type
246+
*/
247+
abstract function abstractFunction(Type $var = null): Type;
248+
249+
}

0 commit comments

Comments
 (0)