常用的开发环境
WAMP: Windows + Apache(WEB服务器,调度员) + MySQL(数据库服务器,用户名,密码,订单信息) + PHP(模块,解析PHP脚本)
127.0.0.1作为本地测试的IP地址。
localhost,为本地主机。这是一个保留域名,主要用于本地测试,对应IP地址为127.0.0.1。
Domain Name System的简写,意思为域名解析系统。保存了服务器名与IP地址之间的映射关系。
用户在浏览器地址栏输入请求URL,发起请求。通过DNS服务器解析出IP地址,找到对应的主机。
如果是以.html结尾的文件,直接返回给浏览器。如果是以.php结尾的文件,需要先执行PHP脚本。
PHPstudy是WAMP开发的集成软件包,可以快速搭建WAMP开发环境,省去Apache服务器、MySQL数据库服务器的繁琐安装、配置过程。同时phpstudy支持在不同的PHP版本之间进行快速切换,更有利于开发调试。
phpstudy官网:http://www.phpstudy.net/
设置服务器时区
在PHP的配置文件中设置date.timezone选项,确保服务器可以读取正确的时区信息。
操作步骤:phpstudyà 其他选项菜单 àPHP扩展及设置 à 参数值设置à date.timezone àPRC
保存重启服务器(只有在重启时才会读取配置文件)
一、 PHP基本语法
1. PHP标记
PHP代码支持与HTML代码混编。PHP标记用来分区PHP代码,从指定位置开始解析到指定位置结束解析。
<?php
//PHP代码
?>
PHP本身支持与HTML混编。执行时,先解析运行PHP代码,将结果与HTML部分一并返回给浏览器。
混编的文件后缀必须为.php,Apache才会调用PHP解析
纯PHP文件建议省略结束标记。
使用英文状态下的分号;作为语句结束标志,意味着该行代码结束了。
注意事项:
l PHP只有一行代码时,可以省略语句结束标记
l 代码注意换行及缩进。实现一定功能的代码之间添加空白行,便于团队协作及代码维护。
注释
注释将打算不执行的代码包含起来。程序不会解析该部分内容。
完美的代码必须包含清晰的注释,包含变量的意义,函数的功能等。
1) 单行注释
// 代码
快捷键:ctrl + /
2) 块注释
/*
代码
*/
多行注释,注释多行的代码
快捷键:ctrl + shift + /
打造自己的PHP开发IDE
为了开发便利,可以安装一些插件如sublime tmpl、colorPicker,DocBlockr等。
参考地址:http://blog.csdn.net/doubleface999/article/details/55798749
变量
1. 变量介绍
可以将姓名保存在变量中,避免每次修改原始文件。
1) 定义
在脚本周期中,值可以改变的量(variable)。即程序运行中,用来存储数据的单位或者空间。
1) 变量的组成
$开头,后面为变量名。
2) 变量名的命名规则
l 由英文字母、数字、下划线等多个字符组成,以字母或者下划线开头。
l 变量命名严格区分大小写。
l 建议命名使用英文单词,见名知意。
l 变量名由多个单词组成:
小驼峰法:第一个单词首字母小写,其余单词的首字母大写(小驼峰)推荐。$stuName
3) PHP编码规范
1. 变量操作
1) 变量声明
l 一般声明与赋值同时进行。
l 不需要单独指定变量的类型,变量的类型由值决定。
4) 读取变量的值
变量必须先声明后使用,否则提示未定义变量“undefined variable”
5) 变量值的修改
直接赋新值即可。
6) 删除变量
unset($var);
删除变量名及值之间的对应关系。变量名及变量值不会立即消失,PHP有专门的垃圾回收机制处理。
2. 常见的输出语句
1) echo语句
l 输出字符串、变量及表达式
l 可以同时输出多个变量及字符串。
l 不是函数,是语言结构
7) 解决输出中文字符等特殊字符显示乱码问题
复杂的数据类型(或者布尔值)不允许直接echo.
乱码的原因:返回数据的字符集与显示时的字符集(字符编码,类似于使用中文与一个不懂中文的人交流)不一致。
通过html的meta标记或者PHP的header函数实现:
header(“content-type:text/html;charset=utf8”);
//告知浏览器返回数据的类型:text/html 将来使用html解析器解析
//使用utf8字符集展示
//必须放在最前面 之前不能有输出
可能遇到的问题:
8) var_dump()
输出一个或者多个变量的类型,长度及值。一般用于打印复杂变量(结合pre标记),如数组,对象等。
9) print_r()
输出变量的值。一般用于打印变量。对于字符串类型、整型、浮点型,打印变量本身。不能打印布尔类型的原始值。对于复杂类型的变量,如数组、对象,按照一定的格式显示。
打印的信息较var_dump简单。