什么是PHP
PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法学习了C语言,吸纳Java和Perl多个语言的特色发展出自己的特色语法,并根据它们的长项持续改进提升自己,例如java的面向对象编程,该语言当初创建的主要目标是让开发人员快速编写出优质的web网站。 PHP同时支持面向对象和面向过程的开发,使用上非常灵活。经过二十多年的发展,随着php-cli相关组件的快速发展和完善,PHP已经可以应用在 TCP/UDP服务、高性能Web、WebSocket服务、物联网、实时通讯、游戏、微服务等非 Web 领域的系统研发。根据W3Techs2019年12月6号发布的统计数据,PHP在WEB网站服务器端使用的编程语言所占份额高达78.9% 。在内容管理系统的网站中,有58.7%的网站使用WordPress(PHP开发的CMS系统),这占所有网站的25.0%。
LAMP是 Linux+Apache+Mysql+Perl/PHP/Python 的简称
在过去的几年里,Linux,Apache,MySQL 和 Perl/PHP/Python 这些组件的兼容性不断完善,在一起的应用情形变得普遍。目前,几乎在所有的 Linux 发布版中都默认包含了这些产品。LAMP 平台常用来作为一种标准开发环境,也是目前最强大的网站解决方案。
在 Web 服务器上,安装上 PHP 软件之后,由Web服务软件(如Apache、IIS等)提供对 PHP 的解析支持。PHP 程序通常以 php 为后缀名。我们可以在 php 文件里面写上一些必要的逻辑过程,如 数据读取 、 用户登录检测 等。当用户通过浏览器访问这些 php 文件的时候如 http://www.abc.com/login.php 这个 URL 地址,PHP 软件在 Web 服务软件的支持下,会对 php 文件中的逻辑进行解析运行。最后将执行的结果返回给浏览器即用户查看到的界面,返回的结果为 HTML 格式。
1.PHP编译器:支持 PHP 运行的核心
2.Apache Web 服务器:提供 Web 服务,并支持 PHP 解析
3.MySQL数据库:用于学习 PHP 操作 MySQL 数据库
4.操作系统:默认为个人PC,安装 Windows 2000 以上系统
5.编辑工具:EditPlus 或IDE工具如 Zend Studio 或 sublime3 HbuilderX 、 vscode等
6.浏览器:IE6 或以上版本、Firefox 、chrome谷歌浏览器版
7.文件存储位置:E:html
phpstudy是一个php运行环境的集成包,集成了最新的“Apache+PHP+MySQL+phpMyAdmin+ZendOptimizer”,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境;另外,还包括了开发工具、开发手册等。
phpstudy是一个php运行环境的集成包,用户不需要去配置运行环境,就可以使用,phpstudy不仅是一款比较好用的php调试环境工具,并且还包括了开发工具和常用手册,对于新手是有很大帮助的。
phpstudy集成最新的Apache+PHP+MySQL+phpMyAdmin+ZendOptimizer,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境;且该程序不仅包括PHP调试环境,还包括了开发工具、开发手册等。总之学习PHP只需一个包。
phpstudy适合多种系统操作,并且支持IIS和Nginx,phpstudy程序包集中了很多php版本的编写语言,运行速度也是很快的。
phpstudy拥有以下特性:
1、全面适合 Win2000/XP/2003/win7 操作系统,支持IIS和Apache、Nginx、Lighttpd。
2、该程序包集成以下软件,均为最新版本。
● phpstudyPHP 5.2.17 新型的CGI程序编写语言,易学易用、速度快、跨平台。
● PHP 5.3.28 新型的CGI程序编写语言,易学易用、速度快、跨平台。
● PHP 5.4.23 新型的CGI程序编写语言,易学易用、速度快、跨平台。
● PHP 5.5.7 新型的CGI程序编写语言,易学易用、速度快、跨平台。
● PHP 7.0.12 新型的CGI程序编写语言,易学易用、速度快、跨平台。
● Apache 2.4.7 最流行的HTTP服务器软件,快速、可靠、开源。
● Nginx 1.5.7
● LightTPD 1.4.32 MySQL 5.5.35 执行性能高,运行速度快,容易使用,非常棒数据库。
● MySQL-Front 5.3
● phpMyAdmin 4.1.0 开源、基于WEB而小巧的MySQL管理程序。
● OpenSSL 1.0.1e 密码算法库、SSL协议库以及应用程序。
● Zend Loader 5.5.0 免费的PHP优化引擎
1.PHP代码段以结尾,中间则是PHP代码
echo "你好,世界!"
?>
2.每一个指令集以;符号结束,一旦缺失则会报错!!!
声明:
$name=“mumu”;
不能以数字开头,不能是关键字
字母数字下划线组成
var_dumo()查看变量的类型
使用变量时候也要带$符号
类型强制转换
(int)(变量):转换为数字类型
(string)(变量):转换为字符串类型
(float)(变量):转换为浮点型
(bool)(变量):转换为布尔型
流程控制用
if(){
}elseif(){
}else{
}
while循环
while (expr){
statement
}
//或者
while (expr):
statement
endwhile;
for循环
for ($i = 1; $i <= 10; $i++) {
echo $i;
}
?>
$a1[1,2,3];
$a2=array(1,2,3);
$a3=array(key=>value,k2=v2);
unset($a1)
unset($a1[2])
在这里插入代码片
foreach($arr as $value){}
foreach($arr as $key=>$value){}
array_push()添加
array_pop()删除
sort()正序
rsort()倒序
array_search()查询
array_reverse()翻转
implode()连接为字符串
explode()字符串分割为数组
shuffle()乱序
natsort()自然排序
array_merge()合并数组
count()计算数组的长度
substr(string,strart,len);
从starat截取len为字符
mb_substr(string,start,len,"utf-8");
strstr(string,str);
截取str后面的字符
strtchr(string,str);
从后面查找str,并截取后面的字符
str_replace(search,replace,string)
用replace替换search字符
strlen();
//获取字符串长度
strpos(string,str,start);
//查找自字符串str穿线的位置
strrpos(string,str);
//从后查找str出现的位置
//配置时间php.ini
date,timezone=PRC;
time();
//获取1970-1-1到今天的秒数
date("Y-m-d H:i",time());
//显示格式如2008-12-01 12:01
//格式化时间戳
strtotime("2021-10-20");
//通过字符串转换为事件戳
$_GET[ ]
//获取所有get请求的参数
$_POST[ ]
//获取所有的post请求参数
$_REQUEST[ ]
//获取所有的请求
json_encode()
//数组转jsonp
json_decode()
//字符串转数组
1.sessinon是用来保持客户端与服务端会话的
2.session的值存储在服务器
3.session是通过cookie来传递给客户端
存储在客户端的数据,可以设置过期时间
服务器或者客户端都可以修改设置cookie
每次http请求都会携带cookie,http响应也会携带cookie