【web 开发基础】php 开发基础快速入门 (2)-PHP的程序开发

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: 开发Web应用这种B/S结构的软件,不仅需要有编写客户端界面的语言,还要有编写服务器端业务流程的语言。例如,编写界面使用的HTML、css 和JavaScript都是在用户通过前端交互发出请求后,服务器再将代码发送到客户端,并在客户端自己计算机的浏览器中解析执行的程序。而PHP则是服务器端运行的语言,只能在服务器端运行,而不会传到客户端。在PHP代码中如果有对文件之类的操作,可以都是操作服务器上的文件,PHP获取的时间也只能是服务器上的时间。只有当用户请求时才开始运行,并且有多少请求,PHP程序就会在服务器中运行多少次。然后PHP根据不同用户的不同请求,完成在服务器中的业务操作,并将结果返回给

前言

PHP ( Hypertext Preprocessor,超文本预处理器)是一种被广泛应用开放源代码、多用途、运行在服务器端的脚本语言。在上一篇文章《【web 开发基础】php 开发基础快速入门 (1)-PHP 介绍及开发环境快速安装和基本使用介绍》中,我们介绍了PHP的优势和PHP集成开发环境的简单搭建以及浅尝了一下PHP代码的编写,写了一个hello world的程序。本文接着继续介绍PHP的相关语法。

上一篇文章中我们了解到PHP可简单地视为和较流行的开发动态网页用的程序语言,PHP是web开发的重要构件,是服务器端嵌入到HTML中的脚本语言。下面我们展开来唠唠其中的相关内容:

服务器端语言

开发Web应用这种B/S结构的软件,不仅需要有编写客户端界面的语言,还要有编写服务器端业务流程的语言。例如,编写界面使用的HTML、css 和JavaScript都是在用户通过前端交互发出请求后,服务器再将代码发送到客户端,并在客户端自己计算机的浏览器中解析执行的程序。而PHP则是服务器端运行的语言,只能在服务器端运行,而不会传到客户端。在PHP代码中如果有对文件之类的操作,可以都是操作服务器上的文件,PHP获取的时间也只能是服务器上的时间。只有当用户请求时才开始运行,并且有多少请求,PHP程序就会在服务器中运行多少次。然后PHP根据不同用户的不同请求,完成在服务器中的业务操作,并将结果返回给用户,最终渲染到浏览器上

PHP是可以嵌入到HTML中的语言

在HTML代码中可以通过一些特殊的标识符号将各式各样的语言嵌入进来。例如:css、Javascript都可以嵌入到HTML中,配合HTML一起完成一些HTML完成不了的功能,或者说是对HTML语言的扩展,而它们都是由浏览器解析的。PHP程序虽然也可以通过特殊的标识符号嵌入到HTML代码中的,但和CSS或JavaScript不同的是, 在HTML中嵌入的PHP代码需要在服务器中先运行完成。如果执行后有输出,则输出的结果字符串会嵌入到原来的PHP代码处,再和HTML代码一起响应给客户端浏览器去解析。这也说明PHP是个服务器端语言

如下面的代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>PHP基础</title>
</head>
<body>
    <h1><?php echo "我的标题";?></h1>
    <p>我的第一个段落。</p>
</body>
</html>

脚本语言

脚本语言,又称动态语言,脚本通常以文本形式(如ASCII)保存,只在被调用时进行解释或编译。PHP程序就是以文本格式保存在服务器端的,在请求时才由Web服务器中安装的PHP应用模块解析,并从上到下一步步地执行

注:PHP程序一定是以<?php开头,以?>结尾,把你的PHP代码放在开始符号和结束符号中间,如上面的例子,如果你设置开启了PHP的短标签(short_tag)则可以写成<?  echo "我的标题"; ?>或者<?="我的标题"; ?>,可以把开始符号的<?php中的PHP省略掉写成:<?

PHP能做什么?

术语有专攻,那PHP都能做些什么呢,或者说能用于什么功能或项目的开发。PHP需要安装PHP应用程序服务器去解释执行,是用来协助web服务器工作的编程语言,也可以说是对web服务器功能的扩展,并外挂在web服务器上一起工作的。用户如果通过浏览器访问web服务器需要得到动态响应的结果,Web服务器就要委托php脚本编程语言来完成。下面就简单罗列PHP能够做事:

1.收集表单

表单是网络编程中最常用的数据输入界面程序.表单通常可以在提交是使用GET或者POST方式将数据发送给PHP脚本程序处理,或存入数据库,如我们经常见到的调查问卷,注册,登录都是表单形式

2.生成动态网页

PHP脚本程序和客户端的javascript脚本程序不同的是,PHP代码是运行在服务器端的PHP脚本程序可以根据用户在客户端的不同输入请求,在服务端运行该脚本之后,动态输出用户请求的内容.这样用户就能接收到想得到的结果,但无法知道其背后的代码是如何运作的.甚至可以将web服务器设置成让PHP来处理所有的html文件,这样用户就无法得知服务器端到底做了什么

3.字符串处理

在编写程序代码或是进行文本处理时,经常需要操作字符串,所以字符串处理一直是程序员使用最多的技术之一.PHP是把字符串作为一种基本数据类型来处理的.在PHP中提供了丰富的字符串处理函数,并使用强大的正则表达式来对字符串或文本进行搜索,查找,匹配,替换等操作

4.动态输出图像

使用PHP并不局限于输出HTML文本.PHP可以通过GD扩展库动态输出图像,甚至可编辑图像

5.服务器端文件系统操作

想让数据持久化,也就是长久保留,可以使用数据库或是文件系统来存取数据,在某些存取数据简单,或者一些特定应用中,没有必要使用数据库,就可以使用文件来保存和操作数据,PHP可以对文件和文件目录进行打开,编辑,查看,复制,删除等等操作

6.操作数据库

PHP最强大最显著的特性之一是它支持多种的数据库的操作。特别是跟PHP的无缝结合,而且用法极其简单

7.会话跟踪控制

我们访问Web服务器通常是使用HTTP协议完成的,但它是一个无状态的协议,没有一个内建机制期来维护两个事务之间的状态。也就是说当一个用户在请求一个页面后再请来控制功能时HTTP将无法告诉我们这两个请求是来自同一个用户。所以可以在PHP中使用会话网站中跟踪一个用户,这样就可以很容易地做到用户登录的支持,并根据某个用户的授权级别和个人喜好显示相应的内容,也可以根据会话控制记录该用户的行为。

8.处理XML文件

PHP具有极其有效的文本处理特性,支持从POSIX扩展或者Perl正则表达式到XML文档解析。为了解析和访问XML文档,PHP 4支持SAX和DOM标准,也可以使用XSLT扩展库来转换XML文档。PHP 5基于强健的libxm2标准化了所有的XML扩展,并添加了SimpleXML 和XMLReader的支持,扩展了其在XML方面的功能

9.支持利用大量的网络协议

PHP还支持利用诸如LDAP、IMAP、SNMP、NNTP、 POP3、HTTP、COM ( Windows环境)等不计其数的协议的服务。还可以开放原始网络端口,使得与任何其他的协议能够协同工作。PHP支持和所有Web开发语言之间的WDDX复杂数据交换。关于相互连接,PHP已经支持了对Java对象的即时连接,并且可以将它们自由地用作PHP对象。甚至可以用CORBA扩展库来访问远程对象。

10.服务器端的其他相关操作

PHP是跨平台的,他能够应用于各种主流和非主流操作系统.如:windows,linux以及linux各种发行版,unix以及unix各种变形.他能够结合Apache,Nginx,IIS,PWS等等各种web服务器

PHP的程序基本语法

PHP代码可以单独编写运行,然后再渲染到前端,如一下代码:

<!DOCTYPE html><html><head><metacharset="utf-8"><title>PHP基础</title></head><body><h1><?phpecho"我的标题";?></h1><p>我的第一个段落。</p><div>这是一个div标签</div><div><tableborder="1"><tr><td>表格1</td><td>表格1</td><td>表格1</td></tr><tr><td>表格1</td><td>表格1</td><td>表格1</td></tr></table></div><span>这是一个span标签</span></body></html>

运行结果如下:

网络异常,图片无法展示
|

在PHP中还可以嵌入html代码中输出并执行javascript代码,这就是PHP的灵活性

<!DOCTYPE html><html><head><metacharset="utf-8"><title>PHP基础</title></head><body><h1><?phpecho"我的标题";?></h1><p>我的第一个段落。</p><?phpecho"<script>alert('你好,我会javascript脚本');</script>";
?></body></html>

刷新浏览器之后,执行代码效果如下:

网络异常,图片无法展示
|

使用PHP输出控制html标签的输出

<!DOCTYPE html><html><head><metacharset="utf-8"><title>PHP基础</title></head><body><h1><?phpecho"我的标题";?></h1><p>我的第一个段落。</p><?php$a=5;
if($a>1){
?><p>控制html内容输出1</p><?php    }
?><?phpif($a<3){
?><p>控制html内容输出2</p><!--这个在页面是不会显示的--><?php    }
?></body></html>

在PHP中,变量都是以$符合开头,如$age =18;以分号结束一句代码,跟大多编程语言一样,都是以';'分号结束,不像Python,Python是以缩进层级来区分不同行的代码,没有结束符号

执行结果:

网络异常,图片无法展示
|

使用循环输出多个html标,减少重复html代码的书写

<!DOCTYPE html><html><head><metacharset="utf-8"><title>PHP基础</title></head><body><h1><?phpecho"循环控制输出html";?></h1><?php$a=5;
for(;$a>=1;$a--){
?><p>控制html内容输出1</p><?php    }
?><hr><?php$b=0;
?><?phpfor(;$b<=5;$b++):?><pstyle="color:#f00;">控制html内容输出2</p><?phpendfor;?></body></html>

执行结果如下:

网络异常,图片无法展示
|

使用PHP控制html输出以及控制css样式

<!DOCTYPE html><html><head><metacharset="utf-8"><title>PHP基础</title></head><body><h1><?phpecho"<span style='font-size:18px;color:#0f0;'>控制输出html";?></h1><?php$b=0;
?><?phpfor(;$b<=5;$b++):?><pstyle="<?if($b%2==0):?>color:#f00;<?else:?>color:#0ff;<?endif;?>">控制html内容输出2</p><?phpendfor;?></body></html>

短短几行代码就可以控制html代码样式和输出,有时候比js还好用

网络异常,图片无法展示
|

PHP中类的定义

PHP是一们面向对象的语言,拥有面向对象所以特性,所以当然可以使用面向对象的模式来编写代码.php是单继承。php是不支持多继承的,但是php可以通过使用interface或者trait实现多继承,如【interface test1 {public function connect();}interface test2 ...】

代码如下:PHP的class的定义跟java语言差不多.

<?phpclassPerson{
public$name;
publicfunctionsay(){
echo$this->name . "say hello";
  }
}
interfaceBody{
publicfunctionwrite();
}
interfaceBody2{
publicfunctiontake();
}
classStudentextendsPersonimplementsBody,Body2 {
public$name;
public$grade;
publicfunctionsay(){
echo$this->name . "说他的数学成绩是:". $this->name ;
  }
publicfunctionwrite(){
echo$this->name . "正在写作业!";
  }
publicfunctiontake(){
echo$this->name . "拿着一本书.";
  }
}
$stu=newStudent();
$stu->name='张三';
$stu->grade=100;
$stu->say();
echo'<br>';
$stu->write();
echo'<br>';
$stu->take();
?>

执行结果如下:

在PHP中,字符串之间的连接符是点'.'(英文的点)如:echo "张"."三";输出的结果就是:张三

网络异常,图片无法展示
|

本文对PHP的基本语法介绍就到到这里,想了解更多的关于PHP相关的请听下回分解!

目录
相关文章
|
7天前
|
SQL 存储 安全
PHP 与现代 Web 应用的安全挑战与解决方案
随着 Web 应用的发展,PHP 作为一种广泛使用的服务器端脚本语言,面临着越来越复杂的安全挑战。本文探讨了当前 PHP 开发中常见的安全问题,并提供了相应的解决方案,帮助开发者构建更安全可靠的 Web 应用。 【7月更文挑战第8天】
17 1
|
3天前
|
安全 大数据 编译器
PHP 8: 探索新特性及其对现代Web开发的影响
在这篇文章中,我们将深入探讨PHP 8的最新特性,包括JIT编译器、联合类型、匹配表达式等,并分析这些更新如何影响现代Web开发。通过具体示例和代码片段,本文旨在为开发者提供一个清晰的指南,以便更好地利用PHP 8的新功能优化和加速他们的应用程序。
10 2
|
3天前
|
编译器 测试技术 PHP
深入理解PHP 7的新特性及其对现代Web开发的影响
【7月更文挑战第12天】本文将探讨PHP 7版本中引入的关键改进和新增功能,以及这些变化如何优化了性能、提升了代码的可维护性,并促进了现代Web开发的最佳实践。通过具体示例,我们将深入了解这些新特性在日常开发中的应用,以及它们为开发者带来的实际益处。
10 2
|
3天前
|
PHP 开发者
PHP 8 新特性及其对现代Web开发的影响
PHP 8作为最新版本,引入了一系列强大的新特性和改进,这些变化不仅仅是语言本身的提升,更深刻地影响了现代Web开发的方式和效率。本文将深入探讨PHP 8的关键特性,分析其在开发实践中的应用和优势,帮助开发者更好地理解和利用这些新特性。 【7月更文挑战第12天】
9 1
|
7天前
|
安全 编译器 PHP
深入理解PHP 8的新特性及其对现代Web开发的影响
【7月更文挑战第8天】随着PHP 8的发布,这个广受欢迎的服务器端脚本语言迎来了重大更新,带来了性能提升和更现代化的编程特性。本文将探索PHP 8中的新特性,并分析它们如何改变开发者构建和维护Web应用的方式,同时指出这些变化对现有项目升级可能带来的挑战与机遇。
|
10天前
|
设计模式 Rust 安全
深入理解PHP 7的新特性及其对现代Web开发的影响
本文通过数据驱动的分析,探讨了PHP 7的发布如何革新了Web开发的面貌。文章首先概述了PHP 7带来的性能提升与新特性,然后通过实际案例和性能测试数据,详细讨论了这些新特性对提高代码效率、增强安全性和支持现代编程范式的具体影响。最后,文章将评估PHP 7在当前Web开发环境中的地位,并对其未来的发展做出展望。
|
15天前
|
安全 编译器 API
探索PHP 8的新特性及其对现代Web开发的影响
随着PHP 8的正式发布,这一版本带来了多项重大改进和新特性,旨在提升性能、增加语言的灵活性并简化开发流程。本文将详细探讨PHP 8中的关键更新,包括JIT编译器、联合类型、命名参数、匹配表达式等,并分析这些新特性如何影响现代Web开发的实践。通过引用最新的性能数据和开发者反馈,我们将深入理解PHP 8带来的变革,以及它对现有项目和未来趋势的潜在影响。
|
16天前
|
安全 大数据 PHP
深入理解PHP 7中的新特性及其对现代Web开发的影响
【6月更文挑战第28天】本文将深入探讨PHP 7带来的革新,从性能提升到语法改进,揭示这些变化如何重塑Web开发领域。我们将一窥未来PHP的发展趋势,并分析开发者如何利用这些新特性来构建更快、更安全、更易于维护的应用程序。
21 1
|
17天前
|
开发框架 中间件 PHP
Laravel框架:优雅构建PHP Web应用的秘诀
**Laravel 框架简介:** Laravel是PHP的优雅Web开发框架,以其简洁语法、强大功能和良好开发者体验闻名。它强调代码的可读性和可维护性,加速复杂应用的构建。基础步骤包括安装PHP和Composer,然后运行`composer create-project`创建新项目。Laravel的路由、控制器和Blade模板引擎简化了HTTP请求处理和视图创建。模型和数据库迁移通过Eloquent ORM使数据库操作直观。Artisan命令行工具、队列、事件和认证系统进一步增强了其功能。【6月更文挑战第26天】
19 1
|
18天前
|
程序员 PHP 数据库
深入理解PHP 7的新特性及其对现代Web开发的影响
【6月更文挑战第26天】随着互联网技术的飞速发展,PHP作为服务端脚本语言的佼佼者,其最新版本PHP 7带来了性能和功能上的显著提升。本文将深度剖析PHP 7中的新特性,并探讨这些变化如何优化现代Web开发实践,提升应用性能及开发效率。我们将从语言本身的变化到实际应用案例,全面解读PHP 7给开发者带来的福音。
12 1