一、对PHP面向对象的一些基础了解
1,面对对象关键词:类(class)对象(object)实例化(new)类成员(mumber)属性(property)方法(method)类常量(const)
2,类,对象和实例化之间的关系
class 类名{ }定义创建类---->$object=new 类名()类实例化产生对象并赋值给一个变量方便后续使用
注意:
1,类内部属性必须使用访问修饰限定符(public,protected,private(通常在class里面的方法里面使用)),如: public $name;
2,类常量不能用->访问(类访问)
3,类内部对象 $this(代表访问该方法的外部对象)
二、PHP常量
用define()设置
define有三个参数,name:必选参数,常量名称;value:必选参数,常量的值;case_insensitive :可选参数,如果设置为 TRUE,该常量则大小写不敏感。默认是大小写敏感的。(注意,对大小写不敏感的意思是无法区分大小写,如果两个变量名除大小写之外都一样则属于同一个变量)
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
三、PHP运算符
1,PHP并置运算符:(.)
在 PHP 中,只有一个字符串运算符。并置运算符 (.) 用于把两个字符串值连接起来。
<?php
$txt1="Hello world!";
$txt2="What a nice day!";
echo $txt1 . " " . $txt2;
?>
提示:在上面的代码中,我们已经使用了两次并置运算符。这是由于我们需要在两个字符串之间插入一个空格。
2,PHP的一个新增整除运算符intdiv()
<?php
var_dump(intdiv(10, 3));
?>
输出3
3,组合比较符
组合比较符也称之为太空船操作符,符号为 <=>语法格式如下:
$c = $a <=> $b;
解析如下:
如果 $a > $b, 则 $c 的值为 1。
如果 $a == $b, 则 $c 的值为 0。
如果 $a < $b, 则 $c 的值为 -1。
四、PHP中的超级全局变量
PHP中预定义了几个超级全局变量(superglobals) ,这意味着它们在一个脚本的全部作用域中都可用。 你不需要特别说明,就可以在函数及类中使用。:
$GLOBALS
$_SERVER
$_REQUEST
$_POST
$_GET
$_FILES
$_ENV
$_COOKIE
$_SESSION
五、PHP的foreach循环
语法:foreach ($array as
k
e
y
=
>
key=>
key=>value){ }
例子:
$array = array('first'=>'ibm','second','hp');
foreach ($array as $key=>$value)
{
echo $key.'=>'$value;
}
结果先输出 first=>ibm再输出second=>hp
代码细节:
第一次循环, $ key = ‘first’,$ value = ‘ibm’,这个时候,实际foreach对$array执行了一个我们看不见的操作: next( $ array)
第二次循环,首先会判断数组
a
r
r
a
y
的
当
前
指
针
是
否
已
经
到
了
数
组
的
末
尾
,
如
果
是
,
结
束
循
环
,
否
则
进
入
第
二
次
循
环
。
当
然
这
样
的
判
断
在
进
入
第
一
次
循
环
的
时
候
也
会
有
,
如
果
array的当前指针是否已经到了数组的末尾,如果是,结束循环,否则进入第二次循环。当然这样的判断在进入第一次循环的时候也会有,如果
array的当前指针是否已经到了数组的末尾,如果是,结束循环,否则进入第二次循环。当然这样的判断在进入第一次循环的时候也会有,如果array是一个空数组,那么就会直接执行循环下面的语句
六、PHP的魔法常量
__LINE__文件中的当前行号
__FILE__文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。
__DIR__文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。
__FUNCTION__函数名称
__CLASS__类的名称
__TRAIT__Trait(特质) 的名字
__METHOD__类的方法名
__NAMESPACE__当前命名空间的名称(区分大小写)
具体用法:
直接用echo打印
<?php
class test {
function _print() {
echo '类名为:' . __CLASS__ . "<br>";
echo '函数名为:' . __FUNCTION__ ;
}
}
$t = new test();
$t->_print();
?>
输出结果:类名为:test;函数名为:_print