PHP初识
2017-10-23 23:41
267 查看
PHP是一种服务器端语言,执行必须通过服务器模块的解析,是一门解释型语言中间运行不需要生成一些中间文件,而是直接用PHP模块来解析就可以了。
Php的全称是‘hypertext Propressor’超文本预处理器
底层用C开发, PHP的语法和c类似,目前市面上使用最多的是PHP5版本,P6直接被砍掉,最新版本php7.2(强大),php7向java语言靠拢。
Php的好处:
1.开源 wamp = Windows Apache MySQL PHP——自己本机测试的首选
Lamp = Linux Apache MySQL PHP——线上生产环境
2.入门简单,用户只需关注应用,开发成本低,但是到一定的规模后,由于PHP的灵活性,反而会使网路的维护十分复杂;
3.支持大多数主流数据库,MySQL,oracle,Redis等----这些支持是用PHP的扩展来做的,每一个扩展都提供了一些必要的函数,类等来操作
4.大量针对PHP开发的框架如Laraval——艺术优雅代码,ThinkPHP——国产思维,加快开发速度;
5.解释型脚本,无需生成.dll或者.exe类似的文件
软件架构:
1.c/s架构
Client客户端/Server服务器;
好处:数据传输速度快,一般直接和数据库交互,中间环节少,比较安全
2.b/s架构
把所有客户端都统一成浏览器,提供一个入口即可,输入请求的服务器以及脚本地址,获取对应的页面信息返回。
b/s是特殊的c/s模式;
b/s架构中间的环节比较多,需要走http网络协议,中间一般会多一个web服务器处理;
服务器:硬件设备提供了一种服务支持的计算机。
ApacheHTTP Sever服务器,跨平台,安全性高,稳定性,是最流行的WEB服务器。
这里Apache服务器就是负责接收用户的请求,处理用户的请求,Apache会有一个PHP模块来处理请求的PHP动态文件。
Nginx并发能力比较强,做分布式的分发服务器。
IP:
ip占用四个字节,一个字节占用8个比特位;
127.0.0.1——本机的一个ip;
192.168.——内网
扩展TCP/IP协议(三次握手协议)
计算机互访,只能通过识别IP的互访,不能识别域名互访。DNS域名解析系统,将域名解析成对应的IP地址,DNS就是一台24小时运行的服务器。
DNS域名解析系统,本地的是hosts,远程的是dns服务器。
hosts是一个隐藏文件,是一个系统文件,是一个没有扩展名的文件,DNS解析会先走本地,如果本地没有,会再次走远程的DNS服务器解析。
端口:类型校区的收发箱子,用来监听某种服务,web80,MySQL3306;
如果当前URL请求的是一个静态文件,会直接返回的不用做任何处理,应为浏览器可以直接解析
如果当前的URL请求时一个动态文件,会交个Apache服务器来处理,PHP模块解析PHP代码,把代码解析的结果以html代码的形式返回给浏览器,再次解析就可以看到结果了
PHP代码标记与HTML代码混编,PHP标记用来分区PHP代码,从指定位置开始解析到指定位置结束解析。
l PHP本身支持与HTML混编
l 混编的文件后缀一般为.php,Apache才会调用PHP解析
l 纯PHP文件建议省略结束标记。好处:在于防止结束标志后的空白字符输出。
l PHP与HTML混编时,先解析PHP代码,剩余代码发给浏览器解析。
PHP变量:
在脚本周期中,值可以改变的量(variable)。即程序运行中,用来存储数据的单位或者空间。
变量是存储到内存的,我们可以手工的清除变量,或者是自动清除,脚本运行结束后系统会自动清除变量。
$变量名 = ;
变量名严格区分大小写,但是PHP函数不区分;
小驼峰法:第一个单词首字母小写,其余单词的首字母大写(小驼峰)推荐。$stuName
大驼峰法:单词的首字母大写
手动删除变量:unset($var);
写法:
echo语句:输出字符串,变量及表达式,可以同时输出多个变量和字符串;
结构上的语句
解决输出中文字符等显示乱码问题:
通过html的meta标记或者PHP的
header(“content-type:text/html;charset=utf8”);
//告知浏览器返回数据的类型:text/html
将来使用html解析器解析
//使用utf8字符集展示
print语句:
1)可以输出字符串及变量及表达式
2)与echo语句的区别为:print不支持同输出多个字符串及变量。
var_dump():
输出一个或者多个变量的类型,长度及值。一般用于打印复杂变量(结合pre标记格式化输出),如数组,对象等。
数据类型:
1标量数据类型
不可再分割的数据类型
一般为单个数值。包括整型、浮点型、字符串类型、布尔类型。
2复合数据类型
这种类型里边可以有多种数据类型的组成
包括数组及对象。数组有多个元素,对象有多个成员、属性。
3特殊数据类型
Null
为null的几种情况:变量未赋值、变量被删除、变量被赋值为null
Resource
资源型,为到第三方数据的引用(如成功的数据库连接、绘制图像创建画布、打开文件、打开文件夹等)。
二进制
binary ----->
bin
八进制
octal
-----> oct
十进制
decimal ----->
dec
十六进制
hexadecimal
-----> hex
二进制转十进制:bindec();
字符型string;
可以是数字,字母,下划线,汉字,符号等等,但是必须用引号包起来,这里可以是单引号,也可是是双引号,单引号中不解析变量打印变量只有变量名,双引号可以解析变量变量可以解析成值;
布尔型bool:
1表示真或假真是true,假是false
2 true和false不区分大小写
3 PHP是弱类型语言布尔型会根据不同情况进行自动转换,或手动强制转换
数组:
PHP中数组有两种,下标是数字的数组,下标是字符串的数组
对象:
由类实例化出来,
Isset
变量未设置或者设置为null,返回false(认为变量没有设置)。其余情况全部为true。一般用来判断变量是否设置,因为变量未设置,无法直接使用。
Empty
判断变量是否为空。PHP中认为变量的值为:""、0、"0"、NULL、FALSE、[]时,变量虽然定义了,但是无实际的意义。为空。如果是空返回true,如果是非空返回false
特殊数据:
nul没有值
资源类型:数据库的连接。
Php的全称是‘hypertext Propressor’超文本预处理器
底层用C开发, PHP的语法和c类似,目前市面上使用最多的是PHP5版本,P6直接被砍掉,最新版本php7.2(强大),php7向java语言靠拢。
Php的好处:
1.开源 wamp = Windows Apache MySQL PHP——自己本机测试的首选
Lamp = Linux Apache MySQL PHP——线上生产环境
2.入门简单,用户只需关注应用,开发成本低,但是到一定的规模后,由于PHP的灵活性,反而会使网路的维护十分复杂;
3.支持大多数主流数据库,MySQL,oracle,Redis等----这些支持是用PHP的扩展来做的,每一个扩展都提供了一些必要的函数,类等来操作
4.大量针对PHP开发的框架如Laraval——艺术优雅代码,ThinkPHP——国产思维,加快开发速度;
5.解释型脚本,无需生成.dll或者.exe类似的文件
软件架构:
1.c/s架构
Client客户端/Server服务器;
好处:数据传输速度快,一般直接和数据库交互,中间环节少,比较安全
2.b/s架构
把所有客户端都统一成浏览器,提供一个入口即可,输入请求的服务器以及脚本地址,获取对应的页面信息返回。
b/s是特殊的c/s模式;
b/s架构中间的环节比较多,需要走http网络协议,中间一般会多一个web服务器处理;
服务器:硬件设备提供了一种服务支持的计算机。
ApacheHTTP Sever服务器,跨平台,安全性高,稳定性,是最流行的WEB服务器。
这里Apache服务器就是负责接收用户的请求,处理用户的请求,Apache会有一个PHP模块来处理请求的PHP动态文件。
Nginx并发能力比较强,做分布式的分发服务器。
IP:
ip占用四个字节,一个字节占用8个比特位;
127.0.0.1——本机的一个ip;
192.168.——内网
扩展TCP/IP协议(三次握手协议)
计算机互访,只能通过识别IP的互访,不能识别域名互访。DNS域名解析系统,将域名解析成对应的IP地址,DNS就是一台24小时运行的服务器。
DNS域名解析系统,本地的是hosts,远程的是dns服务器。
hosts是一个隐藏文件,是一个系统文件,是一个没有扩展名的文件,DNS解析会先走本地,如果本地没有,会再次走远程的DNS服务器解析。
端口:类型校区的收发箱子,用来监听某种服务,web80,MySQL3306;
如果当前URL请求的是一个静态文件,会直接返回的不用做任何处理,应为浏览器可以直接解析
如果当前的URL请求时一个动态文件,会交个Apache服务器来处理,PHP模块解析PHP代码,把代码解析的结果以html代码的形式返回给浏览器,再次解析就可以看到结果了
PHP代码标记与HTML代码混编,PHP标记用来分区PHP代码,从指定位置开始解析到指定位置结束解析。
l PHP本身支持与HTML混编
l 混编的文件后缀一般为.php,Apache才会调用PHP解析
l 纯PHP文件建议省略结束标记。好处:在于防止结束标志后的空白字符输出。
l PHP与HTML混编时,先解析PHP代码,剩余代码发给浏览器解析。
PHP变量:
在脚本周期中,值可以改变的量(variable)。即程序运行中,用来存储数据的单位或者空间。
变量是存储到内存的,我们可以手工的清除变量,或者是自动清除,脚本运行结束后系统会自动清除变量。
$变量名 = ;
变量名严格区分大小写,但是PHP函数不区分;
小驼峰法:第一个单词首字母小写,其余单词的首字母大写(小驼峰)推荐。$stuName
大驼峰法:单词的首字母大写
手动删除变量:unset($var);
写法:
echo语句:输出字符串,变量及表达式,可以同时输出多个变量和字符串;
结构上的语句
解决输出中文字符等显示乱码问题:
通过html的meta标记或者PHP的
header(“content-type:text/html;charset=utf8”);
//告知浏览器返回数据的类型:text/html
将来使用html解析器解析
//使用utf8字符集展示
print语句:
1)可以输出字符串及变量及表达式
2)与echo语句的区别为:print不支持同输出多个字符串及变量。
var_dump():
输出一个或者多个变量的类型,长度及值。一般用于打印复杂变量(结合pre标记格式化输出),如数组,对象等。
数据类型:
1标量数据类型
不可再分割的数据类型
一般为单个数值。包括整型、浮点型、字符串类型、布尔类型。
2复合数据类型
这种类型里边可以有多种数据类型的组成
包括数组及对象。数组有多个元素,对象有多个成员、属性。
3特殊数据类型
Null
为null的几种情况:变量未赋值、变量被删除、变量被赋值为null
Resource
资源型,为到第三方数据的引用(如成功的数据库连接、绘制图像创建画布、打开文件、打开文件夹等)。
二进制
binary ----->
bin
八进制
octal
-----> oct
十进制
decimal ----->
dec
十六进制
hexadecimal
-----> hex
二进制转十进制:bindec();
字符型string;
可以是数字,字母,下划线,汉字,符号等等,但是必须用引号包起来,这里可以是单引号,也可是是双引号,单引号中不解析变量打印变量只有变量名,双引号可以解析变量变量可以解析成值;
布尔型bool:
1表示真或假真是true,假是false
2 true和false不区分大小写
3 PHP是弱类型语言布尔型会根据不同情况进行自动转换,或手动强制转换
数组:
PHP中数组有两种,下标是数字的数组,下标是字符串的数组
对象:
由类实例化出来,
Isset
变量未设置或者设置为null,返回false(认为变量没有设置)。其余情况全部为true。一般用来判断变量是否设置,因为变量未设置,无法直接使用。
Empty
判断变量是否为空。PHP中认为变量的值为:""、0、"0"、NULL、FALSE、[]时,变量虽然定义了,但是无实际的意义。为空。如果是空返回true,如果是非空返回false
特殊数据:
nul没有值
资源类型:数据库的连接。
相关文章推荐
- 初识PHP设计模式--享元模式
- PHP图形图像处理之初识GD库
- 初识PHP中的Swoole
- 韩顺平_php从入门到精通_视频教程_第11讲_初识css_类选择器_id选择器_html选择器_学习笔记_源代码图解_PPT文档整理
- 初识PHP
- PHP 初识 随笔记录
- 初识Mongodb之[CURD]-PHP版
- 想学PHP来兄弟连是正确的选择 初识兄弟连三周
- 初识PHP
- 初识Mongodb之[CURD]-PHP版
- 初识PHP(二)常用函数
- 【零基础学习php一】初识 php
- 瞎玩php——初识cookie和session
- 瞎玩php——php与web页面交互之表单初识(1)
- 初识PHP设计模式--建造者模式
- 初识通用数据库操作类——前端easyui-datagrid,form(php)
- 初识PHP(1)
- 初识php MVC
- PHP学习笔记 -- 初识PHP
- 初识PHP