一.PHP是什么
PHP是一个基于服务端来创建动态网站的脚本语言,可以用PHP和HTML来建设网站主页。学会了PHP,就可以指挥服务器给你干活,编写的过程其实就是与服务器交流的过程,交流的语言就是PHP。PHP是一个基于服务端来创建动态网站的脚本语言,小伙伴们可以用PHP和HTML来建设网站主页。
二.PHP的优势
1、PHP开源免费,没有任何收费的项目。
2、PHP开发组件丰富,使用起来很方便。
3、社区成熟,85%以上的问题都能找到解决思路。
4、PHP学习成本低,很快就能入门。
5、开源库丰富,基本所有类型均有开源产品。
6、PHP7.0基本不输任何一门语言。
7、与数据库管理系统实现了近乎完美的支持。
三. php 程序执行流程
- php 程序是用 php 指令编写并由 php 解析器执行的代码
- php 程序必须使用
.php
做为扩展名 - php 程序可以使用标签方式嵌入到 html 文档中
执行流程哪下:
- 客户端请求服务器端的 php 程序
- 服务器端将 php 程序转发给 php 解释器执行
- php 解释器执行完毕将生成的 html 或其它内容返回到服务器
- 服务器将最终生成的 html 代码做为响应内容返回客户端
四. php 集成运行环境
初学者推荐使用集成环境,省去手工逐一安装配置麻烦
序号 | 集成环境 | 操作系统 | 描述 |
---|---|---|---|
1 | phpStudy | Windows / Linux | 中文,免费,功能全, 推荐 |
2 | MAMP | MacOS | 英文,收费, 功能全, 推荐 |
五. php 程序文档
序号 | 组成 | 描述 |
---|---|---|
1 | <?php ... ?> |
PHP 代码标记 |
2 | ; 分号 |
语句分隔符,代码块使用右大括号 |
3 | 空白符 | 合理使用空白符可增强代码可读性 |
4 | 注释 | // 单行注释 , /* 多行注释 */ |
php 标记之外的内容会原样返回客户端,如 html 代码
六. 打印结果
序号 | 指令 | 描述 |
---|---|---|
1 | echo |
语言结构, 可查看多个变量 |
2 | print |
语言结构,功能与echo 类似,区别是有返回值 |
3 | print_r() |
函数,以更容易理解的格式打印变量信息,常用于数组 |
4 | var_dump() |
函数,可查看一个变量更多信息,如类型 |
5 | var_export() |
函数,输出或返回一个变量的字符串表示(源代码) |
实际工作中,
echo
和var_dump()
基本可以满足大多数需求
七.PHP变量命名
<?php
$username = 'admin';
$userName = 'peter';
// 变量名区分大小写
echo $username, '<br>' , $userName, '<hr>';
// 没有使用$开始, 正确的变量必须使用$做为起始符号
// hello = 'php';
// 变量名中不允许使用数字开始
// $123abc = 'php';
// 变量名中使用了特殊符号
// $user@id = 100;
// 变量名: $ + php标识符
// php有效标识符
// 必须由以下三种字符组成: 大小写的英文字母, 下划线, 数字, 且不能以数字开始
$aaa = 'php.cn';
$_ = 888;;
$_123 = 999;
echo $_123;
八.值传递和引用传递
<?php
//1. 值传递
$price1 = 99;
// 只是将$price1变量的值赋值给了一个新变量
$price2 = $price1;
echo $price1, '----', $price2, '<br>';
// 更新
$price1 = 299;
echo $price1, '----', $price2, '<br>';
echo '<hr>';
// 2. 引用传递
$price1 = 99;
// 引用赋值, &: 取地址符, 引用符
// 相当于给原变量起了一个别名
$price2 = &$price1;
echo $price1, '----', $price2, '<br>';
// 更新
$price1 = 299;
echo $price1, '----', $price2, '<br>';
九.检测与删除变量
<?php
// error_reporting(E_ALL);
// echo $username;
if (isset($username)) echo $username, '<br>';
$username = 'peter zhu';
// 变量删除/销毁
unset($username);
if (isset($username)) {
echo $username, '<br>';
} else{
echo '变量未定义';
}
echo '<hr>';
// 变量已定义而未初始化,默认用NULL进行赋值
// 初始化:第一次赋值
// 更新/修改: 第二次赋值
$email;
$email = null;
var_dump(is_null($email));
echo '<hr>';
$var = '';
var_dump(is_null($var));
var_dump(empty($var));
十.数据类型
<?php
// 1. 基本类型
// 字符串: string
$name = '手机';
// 数值: int, float
$price = 3890;
// 布尔: true / false
$is5G = true;
echo gettype($is5G),'<hr>';
// 2. 复合类型
// 对象
$obj = new stdClass;
$obj->email = 'admin@php.cn';
echo $obj->email . '<br>';
// 数组
$arr = ['电脑', 8000, 'huawei'];
// $str=print_r($arr, true);
// echo '<pre>'.$str.'</pre>';
echo '<pre>'.print_r($arr, true).'</pre>';
// 3. 特殊类型
$num = null;
var_dump($num);
// 资源类型, 文件
$f = fopen('demo7.php','r');
var_dump($f);
echo gettype($f),'<hr>';
if (gettype($f) === 'resource') {echo 'demo7.php是一个文件';}
十一.总结
对PHP有了初步认识,了解了定义变量、数据类型等知识。对于PHP的代码的理解还是需要慢慢的研究,可能是我没怎么接触过编程语言,需要慢慢理解消化。