marty001 发表于 2018-12-15 09:09:40

php基础教程之学习笔记1

  1.1 回顾
  1、 静态网站和动态网站
  a) 不支持数据交互的网站(.htmlhtm)
  i. 优点:速度快,最安全
  ii. 缺点:更改不方便,
  b) 支持数据交互的网站
  i. 优点:更改方便
  ii. 缺点:效率和安全性都没有静态网站高
  iii. 实现动态网站的技术
  1. Asp.asp
  2. Php.php
  3. .net.aspx
  4. Java.jsp
  2、 客户端和服务器端
  a) 客户端:浏览器使用的计算机
  b) 服务器端:存放网站代码的机器。
  3、 端口和端口号
  a) 端口就是服务运行的入口,就类似于大楼的门
  b) 端口号:门的门牌号   0-65535
  4、 BS和CS架构
  a) Bs:通过浏览器访问服务器
  b) CS:通过客户端访问服务器
  5、 前台和后台
  a) 前台:浏览器看到到界面
  b) 后台:管理员操作的界面
  6、 站点、虚拟目录、虚拟主机
  a) 站点:存放网站内容的文件夹
  b) 虚拟目录:有权限的文件夹
  c) 虚拟主机:有权限的文件夹+域名+端口+其他一些配置
  7、 Apache的安装
  a) Apache的默认端口80
  b) 在地址栏中输入http://localhost   显示it works表示正常
  c) Apache的配置文件夹是 conf文件夹
  d) Apache的配置文件conf/httpd.conf
  e) Htdocs是默认虚拟目录
  8、 PHP安装
  a) Php的配置文件php.ini
  b) 在虚拟目录中新建PHP测试文件。
  9、 Mysql的安装
  a) MySQL默认端口是3306
  10、 程序的卸载
  a) 控制面板——程序——选择程序——卸载
  11、 LAMP和WAMP
  a) LAMP:linux+apache+Mysql+php
  b) WAMP:windows+apache+mysql+php
  12、 更改虚拟目录
  a) DocumentRoot用来更改虚拟目录
  b) 要注意更改文件夹的权限
  13、 更改首页
  a) DirectoryIndex
  14、 更改监听端口
  a) Linsten
  15、 DNS解析
  a) DNS:运行解析系统,浏览器输入域名,先到最近的DNS服务器上解析出域名对应的IP地址,然后通过IP地址去访问服务器。
  b) 最近的DNS就在本地,位置:C:\Windows\System32\drivers\etc\host
  16、 虚拟主机的配置
  a) 开启虚拟主机Include conf/extra/httpd-vhosts.conf
  b) 在httpd-vhosts.conf文件中去做相应的配置
1.3 PHP简介
  PHP: Hypertext Preprocessor,中文名:“超文本预处理器”) 是一种通用开源脚本语言,PHP运行在服务器端。
1.4 PHP四种定界符
1.4.1 标准风格(推荐使用)
  
1.4.2 短标记风格
  默认是不支持短标记风格,要在PHP的配置文件中(php.ini)中开启支持短标记,重启服务器
http://s1.运维网.com/wyfs02/M01/89/F6/wKioL1gi5uGS1P6UAAAHeiNxWnc235.png
  
1.4.3 asp风格
  默认是不支持asp风格定界符,要在php.ini中开启。重启服务器
http://s3.运维网.com/wyfs02/M00/89/F6/wKioL1gi5yXSuCaPAAADwjonlgE203.png
http://s4.运维网.com/wyfs02/M02/89/F9/wKiom1gi5z3RIjfHAAAWG62Yt9s214.png
1.4.4 Script标记风格
  
  echo '锄禾日当午';
  
  PHP支持省略结束标记,PHP定界符开始的地方一直到最后全部都是PHP代码的情况可以省略PHP结束符。
http://s5.运维网.com/wyfs02/M01/89/F6/wKioL1gi51iDmhIDAAAWBiL7xqg747.png
1.5 PHP语法的特点:
  1、 php语句以分号结尾。
  2、 PHP的关键字不区分大小写,变量名是区分大小写。
1.6 变量
  变量是计算机内存中的一段空间。
http://s3.运维网.com/wyfs02/M01/89/FA/wKiom1gi5_HTzxiDAAAD2NMJy1M757.png
1.6.1 变量的命令规则
  必须以$开头,$不是变量名的组成部分,仅仅表示PHP变量名从这里开始。
  除了$以外,字母、下划线开头,后面跟的是字母、数字、下划线。
  下列变量名合法的是:
  $a1合法
  $1a不合法
  $_1a合法
  $a-1不合法
  $a%不合法
1.6.2 变量的赋值
  用=来做赋值运算
  变量可以传值也可以传地址
http://s4.运维网.com/wyfs02/M02/89/FA/wKiom1gi6AaAUfu-AAARYJG8XLo001.png
http://s2.运维网.com/wyfs02/M01/89/F6/wKioL1gi6B2wYmHRAABhUltdX-I464.png
  &是获取值的地址
http://s2.运维网.com/wyfs02/M02/89/FA/wKiom1gi6DHAGXZuAABertL7xOs113.png
http://s1.运维网.com/wyfs02/M02/89/F6/wKioL1gi6ESjY_NYAABzgzvGMEQ743.png
1.6.3 销毁变量
  通过unset()来销毁变量。unset()销毁的是变量名。值是由PHP的垃圾回收机制销毁。
http://s2.运维网.com/wyfs02/M00/89/F6/wKioL1gi6FnBhusNAAArL6xJtzY142.png
http://s3.运维网.com/wyfs02/M01/89/FA/wKiom1gi6GuAXNQXAAATFoeDIGg761.png
1.6.4 可变变量
http://s2.运维网.com/wyfs02/M01/89/F6/wKioL1gi6H7iQ3mBAAAee1eUxNU357.png
  $b保存的是变量名a,所以$$b就是$a,最后输出$a的值。
1.7 常量
  当一个值在脚本执行周期内不发生变化,就可以将值声明成常量.
  用define()关键字
  语法:
  Define(常量名,值,是否区别大小写)
  常量名不能有$开头
http://s3.运维网.com/wyfs02/M02/89/FA/wKiom1gi6JTySiBKAAAT6DShL6s640.png
  默认情况下,常量名是区分大小写,可以通过define的第三个参数来设置是否区分大小写
  True:不区分FALSE :区分。
http://s4.运维网.com/wyfs02/M02/89/F6/wKioL1gi6KjDSLAjAAARSUYorqU525.png
  常量不能重复定义。
http://s3.运维网.com/wyfs02/M01/89/FA/wKiom1gi6MPhDn6EAAAhAFSIJvQ035.png
  在定义常量的时候先判断一下当前常量是否被定义,defined()函数判断
http://s2.运维网.com/wyfs02/M02/89/F6/wKioL1gi6NXCq12TAAAjC_FH8MA135.png
1.8 PHP执行原理
  客户端向服务器发送一个请求,如果请求的是一个HTML页面,服务器直接将HTML页面发送到客户端给浏览器解析,如果请求的是PHP页面,则服务器会运行PHP页面然后生成标准的HTML,将生成的HTML代码发送到客户端。
http://s4.运维网.com/wyfs02/M02/89/FA/wKiom1gi6O-BclLAAABuOwWpU3Y993.png
1.9 变量的数据类型
1.9.1 标量类型
  类型
  描述
  整数型
  范围 -231~231-1
  浮点数
  存放整数和小数
  布尔型
  True和FALSE
  字符串型
  双引号字符串和单引号字符串
http://s3.运维网.com/wyfs02/M00/89/F7/wKioL1gi6QLR3lu8AAAU2DTjGEU253.png
1.9.2 复合类型
  类型
  描述
  数组
  array
  对象
  object(以后再学)
http://s1.运维网.com/wyfs02/M01/89/F7/wKioL1gi6RPBsb5EAAAKCdUtTOM525.png
1.9.3 特殊类型
http://s5.运维网.com/wyfs02/M01/89/F7/wKioL1gi6SiwRfKDAAAHpSQTF44662.png
  资源:PHP 的外部数据成为资源类型。
  NULL:没有
1.10 字符串
  单引号字符串是真正的字符串,双引号字符串要将变量给替换。因为单引号字符串不需要运算,所以单引号字符串执行效率高。
http://s3.运维网.com/wyfs02/M00/89/F7/wKioL1gi6UCDtIFMAAA3pfioxJA100.png
  思考:
  如下代码输出什么内容?
http://s2.运维网.com/wyfs02/M02/89/F7/wKioL1gi6VKAGKRSAAAxjVy-cGc573.png
  变量如果在字符串的前面或中间,要用{}括起来。
  {和$要紧挨着
http://s1.运维网.com/wyfs02/M01/89/FA/wKiom1gi6WqywGw-AAAHcBqZc7o611.png
  {和$可以调换位置
http://s3.运维网.com/wyfs02/M02/89/F7/wKioL1gi6XyQaTOKAAAJsKoc6jw784.png
1.11 数组
1.11.1 数组的概念
  思考:
  一个变量存一个值,现在我们班有100个学生,要100个变量来保存学生姓名,这样不便于记忆,如何解决?
  解决方法:数组。
  数组:计算机内存中的一段连续空间,通过下标来区分数组。
http://s1.运维网.com/wyfs02/M00/89/FA/wKiom1gi6ivRBUJ4AAAG9acOVyw986.png
1.11.2 数组的分类:
  索引数组:通过元素的位置做下标,默认从0开始,每次增长1,可以更改数组的起始下标。
http://s5.运维网.com/wyfs02/M00/89/F7/wKioL1gi6aWS4BLdAAAagfH683Y796.png
  关联数组:通过字符串做下标
http://s2.运维网.com/wyfs02/M01/89/F7/wKioL1gi6bXyA6g0AAAiEKxeSzg236.png
  数组的下标我们可以成为键,下标和对应的值成为“键值对”。
  思考:1、请写出数组的下标
  $stu=array(1=>'a','b','c','d');
http://s4.运维网.com/wyfs02/M00/89/F7/wKioL1gi6eHxP2u_AAAIK7l_dSU129.png
  思考:2、请写出数组的下标
  $stu=array('a',2=>'b','c',5=>'d');
http://s2.运维网.com/wyfs02/M01/89/F7/wKioL1gi6evB0GHbAAAIxJZsSqA879.png
  思考:3、请写出数组的下标
  $stu=array(1=>'a',1=>'b',1=>'c','d');
http://s5.运维网.com/wyfs02/M02/89/F7/wKioL1gi6fXjtjVHAAAF9v001v8368.png
1.12 输出语句
1.12.1 echo
  只能输出数字、字符串
  对于布尔型,TRUE输出成1, FALSE输出空
  可以一次输出多个参数。echo没有返回值
1.12.2 print
  和echo语句很类型,
  一次只能输出一个参数
  输出成功会返回1,失败返回0
1.12.3 print_r();
  用来输出数组,输出的内热包括键和值,不包括数据类型
1.12.4 var_dump()
  如果输出普通变量,输出的是变量的值和变量的类型。
  如果输出的数组,包括键、值、值的数据类型。
1.13 PHP注释
  单行注释:
  //单行注释
  #单行注释
  多行注释:
  /*
  多行注释
  */
1.14 运算符
1.14.1 算数运算符
  一元运算符
  二元运算符
  负号
  +
  ++递增1
  -
  --递减1
  *
  /
  %
  注意:
  1、+号在js中可以做数字的相加,也可以做字符串相加(字符串相连),在PHP中,+只能做数字运算
  思考:下列表达式结果是什么
  
  结果:30
  
  结果:30
  
  结果:0
  2、取模就是取余数
  5%2=1
  10%2=0
  2%5=2
  4%10=4
  3、++前置和++后缀
  ++前置:先自增,后运算
  ++后置:先运算,后自增
  思考:如下代码输出什么?
  
  //输出5
  
  //输出6
  
  //输出21
1.14.2 比较运算符
  运算符
  描述
  >
  大于
  >=
  大于等于
  
页: [1]
查看完整版本: php基础教程之学习笔记1