php语法复习

PHP 的脚本块以 <?php 开始,以 ?> 结束。可以把 PHP 的脚本块放置在文档中的任何位置。

在支持简写的服务器上,可以使用 <? 和 ?> 来开始和结束脚本块。

1、静态成员只能在类内声明,类外初始化()
2、自身用$this->、类外用_self
3、类内部静态的成员方法可不可以访问非静态的成员属性(不可以,因为静态是属于类的,非静态是属于对象的,非静态须先声明)对象的成员属性保存在堆里,在类里边声明的属性除静态变量外都属于对象的,对象的名字在栈里
4、非静态的成员属性可不可以访问类内部静态的成员方法(可以)
5、抽象类可以声明属性(对象)
6、接口不能声明常量(能)
7、类名首字母名大写。
8、静态变量保存在全局区
9、static $a;//有初始值,$a=0。 $a;//没有初始值
10、堆和栈的区别:堆:是由程序员分配的,空间大eg:$arr、$a
11、成员属性和成员方法都在程序代码区
12、构造方法的功能:通过传来的值赋给成员属性
13、类内部非静态要想赋初始化构造方法赋初始值,
14、构造方法啥时会被调用到有new时,析构方法有删除的时候会被调用
15、get、post的区别:功能:上传表单数据。都是为了解决b/s的
它们出现最主要的标签:
<form name=form1 method=get action=php文件>
......
<input type=submit name=input1>
</form>
表单:收集用户输入表单;
Web
c(客户)/s(数据库):凡是下载客户端的就叫c/s
b(浏览)/s(服务器)[把这种情况叫:通信]:浏览器服务器,是目前大家最容易接受的,最简单的,
get是从地址栏里发布的,容易被黑客攻击所以尽可能传不重要的,
post:传重要的文件,安全的,量大的用它。
<form name=form1 method=post action=php文件>
..... <type=file>
<input type=submit name=input1>
</form>
16、require include
功能:引入文件
确定引入文件和当前打开文件的关系
a.php
dhfdla

d.php
require "a.php";//是复制粘贴到这儿,当你引入的文件和当前的文件一起加载进去 ,但是当你引 入的文件有问题当前文件也执行不了,当你引用的文件比较多有重名的时候用 require_once
4325
源代码--加载内存--(apache+php)解释--执行

include
231
include "a php"//当你后边使用的时候才被加载进来,它里的错误不影响当前文件
123

include "a php";(相对路径)不叫函数,叫当前结构定义应用
include (a php);叫函数
如果不在一个目录下,那就找不到这个文件 ,用绝对路劲:include "d:\apache\htdocs\a\a.php";
17、js for( in ){}下标是关联数组时用
基于对象
eg:img{
src="";
alt="";
border="";
alink="";
}
或:<img src="",alt="",...> 或 :img.src="b.jpg";

php foreach( as ){}
下标是关联数组时用foreach ,索引的时候用for循环

18、魔术方法
其实本身就是函数,
但是自定义的普通函数在调用的时候不一样,要明确调用
function fun(){}
普通函数出现的目的主要是重复利用代码
eg:$r=3
$area=3.14*$r*$r;
fun(3)、fun(4);
变量必须初始化
魔术方法不需要被调用
1) function__construct(){};这个魔术方法叫构造方法
调用条件:只要创建对象
2) function__destruct(){}:这个魔术方法叫析构方法
调用条件:对象销毁
eg:$p=null;文件结束
3)__set:类外设置私有的成员属性
a.public $name;//类内声明
$p->name="zhangsan";//类外访问,这种方法可以,不安全
function__set(){}//自定义的函数
b.private $name;//类内声明
__set(){}
$p->name="zhangsan";//类外访问私有,魔术方法带来的好处是安全
c.private $name;
function__set(){}
$p->set("zhangsan");//这种是普通方法,安全
__get:
__call:
__clone:
__tostring:

private $name;$p=new person
__set:功能:类外设置私有的成员属性
条件:$p->name="lisi";

__get:功能:类外获取私有的成员属性
条件:echo $p->name;
19、$this->
在班里的院里的奖学金
要求:1,学习成绩 2,参加活动分数 这就叫类
符合:李斯 、张三 这就叫对象

当你把函数写在类里就叫方法--面向对象
在类内可以创建对象吗,可以,他的数据类型可以出现对象
20、变量为啥初始化?
:他是不强制先声明,初始化(可以不声明直接用)
1)empty-- 检查一个变量是否为空
var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,""、0、"0"、NULL、FALSE、array()、var $var;
避免以前代码遗留下来的问题,未初始化的变量:false 0 空字符串等
地址栏进行全局变量赋值----安全
是标量类型的直接赋值,对象属性可以直接复制但是没有意义,需用构造方法

21、对象作为数组元素和对象作为函数参数
22、静态和非静态的区别:
23、声称对象就是构造函数,$book=new book(); 初始化对象成员属性
析构函数:$book=null;删除
24、看哪个变量能不能用:从里向外看
25、看是啥数组,看下标,只要下标是数字就是索引数组,默认是索引
26、$:提取变量值
正则表达式
__:预定义常量 __f__
=>数组映射符
;正则表达式
序列化


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值