php基础
一. php包括的内容
1.浏览器 2.服务器 3.php引擎 4.数据库
二. wamp集成环境
- windows + apache(服务器) + MySQL(数据库) + php引擎
- wamp文件夹里边bin文件夹和www文件夹
bin: 里边存放的是Apache, php mysql的配置文件
www: 里边存放的是所有的php文件 也可以存放html css js
三.php的运行原理
四.写php文件
- 第一步:打开wamp集成环境 W必须是绿色才能正常运行
W有三种颜色:
小红: 表示两者都关闭Apache和MySQL服务器
小橙: 关闭Apache或者MySQL服务器
小绿: 表示Apache和MySQL都开启 - 第二步: 写php文件 文件后缀是.php
- 第三步: 必须通过localhost来打开php文件
五. localhost
- localhost指:访问本地服务器的名字:
localhost可以访问www文件夹下边的所有文件,默认访问的是index.php。
本地的ip地址是127.0.0.1。
也就是说我们可以通过127.0.0.1或者是localhost来访问www文件夹下边的所有文件 - 修改php的版本
小绿—php----php version 将版本该问7.0.0 - php是一个模块化的引擎
怎么开启其PHP的模块化的东西
小绿----php -----php extensions
六. php的书写规范
- 每条语句后边都要加分号;
最后一条语句的分号可以省略,最好不要这么干) - php中的每个字符都要使用英文半角
- php书写格式
[重点]标准格式:<?php 这里写php代码 ?> [注]写的是纯的php代码,必须将最后一个?>去掉 - 注释:
单行注释: //这里是注释内容
多行注释: /*这里是注释内容*/
作用:
1.提高代码的可读性
2.利于团队合作
3.通过注释可以很快的建立一个项目的文档 (写文档就是写说明书) - php代码的执行顺序: 从上往下,依次执行
七. 变量
定义: 在程序执行的过程中,其值是变化的量就是变量
变量的格式:
- 变量必须以$开始
- 变量名是由数字,字母,下划线的组合
- 但是不能以数字开始
- 变量名要起的有意义, 达到见名知意(建议优先考虑英文)
例子:
$goods $shangpin $sp $a $b $c
- 变量名遵循驼峰法或者下划线法(建议大家使用小驼峰)
例子:
$userName $iPhone $UserName $user_name
- 变量的赋值等于号两边必须加空格
- 变量名区分大小写
[注]
- = 叫做赋值运算符
- = 等于号左边放变量, 右边放变量的值
- 变量的4种操作:
1.给变量赋值
$name = 'xxx';
2.读取变量的值
echo $name;
3.检测变量是否设置值
isset();
4.销毁变量:
unset();
八. 八种数据类型
整型 浮点型 字符串类型 布尔型 数组 对象 资源 空(null)
标量数据类型:
- 整型(integer): $num=20;
- 浮点型(float): $a = 3.14;
- 字符串(string): ‘name’ “name” $name = ‘xxx’;
- 布尔型(boolean): $name = true;$name = false;
复合数据类型:
- 数组(array): $people = [‘乔布斯’,‘乔治’,‘乔丹’]
- 对象(object): $pdo=new PDO($dns,$username,$password);
特殊数据类型:
- 资源(resource): 文件 图像
- 空(null): $name 没有赋值 $name = null; 赋值为null或NULL
九. 单引号和双引号的区别:
- 双引号可以解释变量,单引号不可以解释变量
$a = 250;
echo '$a';//输出结果为$a 没有解释变量
echo '<br />';
echo "$a";//输出结果为250 解释变量
- 双引号可以解释转义字符,单引号不可以解释转义字符,但是除了\\和
转义字符: \r(回车) \n(换行) \t(制表) \(表示一个反斜线)
echo '123 \n'; //123 \n
echo '<br />';
echo "123\n345";//123 345
- 双引号中可以加单引号,单引号可以加入变量,变量会被解释
$a = 250;
echo "我是'$a'";//结果为:我是'250'
- 双引号中不能加双引号,单引号中不能加单引号,如果要加,需要转义
echo "我是"啊啊啊"";
echo '<br />';
echo '我是'啊啊啊'';
总结:以上写法会直接报错
echo "我是\"啊啊啊\"";//结果为我是"啊啊啊"
echo '<br />';
echo '我是\'啊啊啊//结果为我是'啊啊啊'
总结: 该结果会执行
- 双引号中可以加单引号,单引号可以加双引号.
echo "我是'啊啊啊'"; //结果为我是'啊啊啊'
echo '<br />';
echo '我是"啊啊啊"'; //结果为我是"啊啊啊"
- 双引号中要有分隔符来区分,否则会将变量后边的所有字符解释,或者添加大括号来区分变量
$a = 250;
echo "$asdfghjklsgh";
总结: 该结果执行错误
$a = 250;
echo "$a?sdfghjklsgh";
总结: 该结果执行正确
- 能尽量使用单引号就是用单引号,因为它的效率更高
单引号:不需要解释,直接输出
双引号:需要解释,在输出 - 如果变量和字符串需要一起输出,这时最好使用单引号连接字符串
$a = 250;
echo "$a".'sdfghjklsg';//结果为:250sdfghjklsgh
十. 工具:
echo:输出变量,可以输出多个,中间使用逗号隔开
print:输出一个变量, (不经常使用)
var_dump:输出变量的详细信息(可以输出任何一种数据类型)
print_r:可以输出变量,经常来输出数组
gettype: 获取变量的数据类型
十一. 判断类型常用的功能函数:
is_array() 判断变量的数据类型是否为数组
is_bool()
is_float()
is_int()
is_null()
is_numeric() 判断变量的数据类型是否为整数或者字符串整数
is_object()
is_resource()
is_scalar() scalar:标量
is_string()
十二. 类型转换(一般是标量类型的转换)
- 强制转换:
intval() floatval() boolval() strval()
- 自动转换:
(要自动转换的类型)变量; (int) (float)
- 设置类型转换:
settype(变量,‘转换的类型’):若成功返回TRUE,失败返回FALSE
十三. 常量
- 概念: 在程序运行的人过程中,其值是不可以改变的量的就是常量
- 定义: define(‘常量名’,常量值);
- 例子: define(‘PI’,3.14);
十四. 超全局变量
- $GLOBALS 引用全局作用域中可用的全部变量
- $_SERVER 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。
- $_GET 通过URL参数传递给当前脚本的变量的数组
- $_POST 通过HTTP POST方法传递给当前脚本的变量的数组。
- $_REQUEST 默认情况下包含了$_GET、$_POST、$_COOKIE的数组
- $_ENV 通过环境方式传递给当前脚本的变量的数组。
- $_FILES 通过HTTP POST方式上传到当前脚本的项目的数组
- $_COOKIE 通过HTTP Cookies方式传递给当前脚本的变量的数组
- $_SESSION 当前脚本可用 SESSION 变量的数组。
十五.可变变量
$zicheng = 'gengzicheng';
$gengzicheng = 'yanxuxia';
echo $$zicheng;//yanxuxia
echo '<br />';
echo $gengzicheng;//yanxuxia
将变量的值当做另外一个变量的名字
十六. 变量引用
$a = '123';
$b = &$a;
$a = '345';
var_dump($a,$b);