PHP基础语法
一、PHP的基本概念
1、php是什么
PHP 是超文本预处理语言的缩写,Hypertext Preprocessor,是一种在服务器端运行的脚本语言。PHP是轻量级、弱类型的语言。
PHP语法混合了C、java、perl以及PHP独创的语法。
2、php发展
PHP最初是由Lerdorf 为了维护个人网页而制作的一个简单的用perl语言编写的程序这个程序主要显示lerdorf的个人简历,以及统计简历的访问量,后来随着功能的不断完善加上 后来的以色列工程师的加入完善代码,称为PHP3的基础。
3、php的优势
(1)开放的源代码,php项目在网上都可以得到他的源代码。
(2)跨平台性高,可以运行在unix、linux、windows、macos上。
(3)程序开发快,运行快,技术本身学习快。
(4)面向对象。
二、注意事项
1、在PHP文件中可以编写HTML、CSS、Javascript语言,但是使用<?php ?>标记的语言会使用PHP应用服务器解析,将解析后的代码发给客户端浏览器,这个标记之外的都发给客户端。注意:在html文件中不能嵌套php的代码;
2、访问形式
http://localhost/php_review/1/test.php
三、语言标记
1、<?php ?> 建议使用这种形式如果 ?>后面没有脚本,可以不用写,而且建议不写
<? ?> 短风格 会被管理员禁用,所以不建议使用
<% %> asp风格 会被管理员禁用,所以不建议使用
在PHP文件中 ,遇到<?php ?>这些标签 会解析,如果没有这些标签,会直接将代码返回给浏览器去显示
2、在php的配置文件中设置:
Short_open_tag 短风格
Asp_tag asp风格
在php.ini配置
3、不同的语句之间要用分号 隔开
语句: 1、功能执行语句 要使用分号隔开
2、结构语句 不要使用分号隔开 如if()
4、注释
(1)PHP中的注释:
单行注释: //
多行注释: /* */
(2)代码之间的空白
tab键
缩进:shift+tab
四、变量
1、定义
变量:用于临时存储值的容器
2、变量的声明:
(1)$变量名 = 值
(2)声明和使用都要使用 $符号
(3)变量的命名尽量使用 拼音或者英文单词,不要使用数字、特殊字符或者中文
($this特殊,也不要使用,因为在面向对象中代表当前对象)
(4)变量名区分大小写
(5 )PHP是弱类型的语言,声明一个变量的时候不需要声明他的类型,他的类型由值来指定
C、Java属于强类型的语言,需要先声明一下变量的类型
Echo 只输出变量的值
Var_dump() 不仅输出变量的值,还会输出变量的类型
3、判断变量是否存在以及删除变量
(1)判断变量是否存在,使用 isset()函数
(2)将变量清除掉,使用unset()函数
4、可变变量
可变变量:一个变量的值 可以作为另一个变量的名字
5、变量的赋值
(1)值传递
PHP的变量默认是值传递,只是把值赋值之后传递给了另一个变量。
(2)引用传递
如果是引用传递的话,将保存变量的内存地址赋值,使用&符号,如果一个变量 发生改变,另外一个也跟着变。
6、变量的作用域
局部作用域:指的是函数范围内定义的变量,在局部只能使用局部的变量
全局作用域:函数之外定义的变量,在全局只能使用全局的变量
但是,如果想在局部范围内使用全局范围的变量,需要使用global声明;
也可以使用$GLOBALS['变量名']注:没有”$”
7、数据类型
PHP是一种弱类型的语言,Java、C语言、C++等强类型的语言
在PHP中,我们声明一个变量的时候不需要先制定数据类型,而是通过值来确定变量的类型
8大数据类型:
4种标量数据类型:
整型:int 在内存中一个整型的数据 占4个字节,不管你保存的是多长的数据,都占4个字节,一个整型类型的数据,范围 20多亿
浮点型:float
单精度:小数点后有一位小数,占4个字节
双精度:小数点后面有多位小数, 8个字节
以0开头的表示以 8进制声明一个变量
以0x开头的表示以16进制声明一个变量
字符串
定义字符串:
(1)单引号
(2)双引号
(3)定界符
单引号 和 双引号的区别:
(1)双引号里面可以解析变量,单引号会将里面原封不动的输出
(2)转义字符---\ 将\ 转义字符后面的原封不动的输出
单引号:
双引号:
总结出:单引号会把转义字符也输出,双引号不会
(3)建议使用 单引号
因为 双引号会判断一下里面有没有变量,所以执行速度要比 单引号 慢
(4)单引号里面不能嵌套单引号,双引号里面不能再嵌套双引号
定界符:<<<
需求:在php的文件中,我想输出一段javascript的代码
思路:浏览器显示的是 php文件被解析之后的结果,所以我可不可以给浏览器返回一段javascript的代码
布尔值
他的值也非常简单,true 和 false
当转换为bool值时,哪些情况被认为是false?
1,false本身
2,整型值 0
3,浮点型值 0.0
4,空字符串以及字符串 “0”
5,空数组
6,不包括任何成员变量的对象
7,NULL
8,没有任何标记的simpleXML对象
2种复合数据类型
数组:
对象:
2种特殊数据类型
资源型:
空 :
只有一个值就是NULL