1. foreach中的引用
<?php $arr = array(1, 2, 3, 4); foreach ($arr as &$value) { $value = $value * 2; } // $arr is now array(2, 4, 6, 8) unset($value); // 最后取消掉引用 foreach ($arr as $value) { echo $value.", "; } ?>
输出2,4,6,8.
如果去掉&就不对了:
1 <?php 2 3 $arr = array(1, 2, 3, 4); 4 foreach ($arr as $value) { 5 $value = $value * 2; 6 } 7 8 unset($value); // 最后取消掉引用 9 foreach ($arr as $value) { 10 echo $value.", "; 11 } 12 13 ?>
输出1,2,3,4
2. foreach基本用法:[ref]
1 <?php 2 $arr_age = array("wang"=>18, "li"=>20, "zhang"=>25); 3 foreach ($arr_age as $age) { 4 echo $age,'<br />'; 5 } 6 ?>
运行该例子输出:
18 20 25
1 <?php 2 $arr_age = array("wang"=>18, "li"=>20, "zhang"=>25); 3 foreach ($arr_age as $key=>$age) { 4 echo $key,': ',$age,'<br />'; 5 } 6 ?>
运行例子输出:
wang: 18 li: 20 zhang: 25
3. unset()函数销毁变量 [ref]
4. PHP类中set和get方法 [ref]
5. PHP操作数据库 [ref]
6. 继承 extends
PHP中继承是单一继承,不同于C++中的多继承。
7. self
self类似与$this关键字,但$this是需要类实例化以后才可以使用,self 可以直接访问当前类中的内部成员。
注意:因为没有实例化的类访问内部属性或者方法是没有意义的,所以self一般用来访问类中的:静态成员,常量,或者其他定义内容。
可参看此文。
8. static
static可以在类未被实例化时使用,静态属性单独占用内存而不会因创建多个对象而导致同样的方法或者属性重复占用。
-- 类内部访问静态成员:
类名称 : : 静态成员
self : : 静态成员
-- 类外部访问静态成员:
类名称 : : 静态成员
9. const
const用来定义类中的常量,类似PHP外部定义常量的关键字define();
常量不用$符。
10. 接口 interface
接口:一种成员属性全部为抽象的特殊抽象类。
---接口和抽象类之间的区别:
-抽象类: 1、类中至少有一个抽象方法 2、抽象方法前需加abstract -接口: 1、类中全部为抽象方法 2、抽象方法前不用加abstract 3、接口抽象方法属性为public 4、成员属性必须为常量