0

0

世上最全的PHP详解(快速入门)

醉折花枝作酒筹

醉折花枝作酒筹

发布时间:2021-03-17 16:27:32

|

21571人浏览过

|

来源于freeCodeCamp

转载

php是一种服务器端脚本语言,由rasmus lerdorf于1995年创建。它是一种广泛使用的开源通用脚本语言,特别适合web开发,可以嵌入到html中。

世上最全的PHP详解(快速入门)

PHP的用途是什么?

截至2021年3月,已知的85%的服务器端语言网站使用PHP。它通常用于网站上动态生成网页内容。用例包括:

通常,它在第一种形式中用于动态生成网页内容。PHP脚本的其他用途包括:

  • 处理和保存表单数据中的用户输入

  • 设置和使用网站cookies

  • 限制访问网站的某些页面

最大的社交网络平台Facebook是用PHP编写的。

PHP是如何工作的?

所有PHP代码只在web服务器上执行,而不是在本地计算机上执行。例如,如果您在网站上填写了表单并提交表单,或者单击指向PHP编写的网页的链接,则计算机上不会运行实际的PHP代码。相反,表单数据或web页面请求被发送到web服务器,由PHP脚本处理。然后,web服务器将处理过的HTML发送回您(名称中的“超文本预处理程序”来自于此),web浏览器将显示结果。因此,您无法看到网站的PHP代码,只有PHP脚本生成的HTML。具体说明如下:

PHP是一种解释语言。这意味着,当您对源代码进行更改时,可以立即测试这些更改,而无需首先将源代码编译为二进制形式。跳过编译步骤可以加快开发过程。PHP代码被封装在?>标签,然后可以嵌入到HTML中。

安装

PHP可以与web服务器一起安装,也可以不与web服务器一起安装。

GNU/Linux系统

在基于Debian的GNU/Linux发行版上,您可以通过以下方式安装:

sudo apt install php

在Centos 6或7上,您可以通过以下方式安装:

sudo yum install php

安装后,只需在终端中执行以下操作即可运行任何PHP文件:

php file.php

您还可以安装localhost服务器来运行PHP网站。安装Apache Web服务器:

sudo apt install apache2 libapache2-mod-php

或者你也可以通过安装XAMPP(免费开源跨平台web服务器解决方案堆栈包)或类似的包,如WAMP

PHP框架

由于为网站编写整个代码对于大多数项目来说并不实际/可行,因此大多数开发人员倾向于使用框架进行web开发。使用框架的好处是

  • 你不必每次创建一个项目都重新设计轮子,很多细微的差别已经为你解决了

  • 它们通常结构良好,因此有助于分离关注点

  • 大多数框架倾向于遵循该语言的最佳实践

  • 其中很多都遵循MVC(Model-View-Controller)模式,这样就可以将表示层与逻辑层分离开来

流行的框架

  • CodeIgniter
  • Laravel

  • Symfony

  • Zend

  • CakePHP

  • FuelPHP

  • Slim

  • Yii 2

基本语法

PHP脚本可以放在文档的任何地方,并且始终以?php开始并以结束?>。 此外,PHP语句以分号(;)结尾。

下面是一个简单的脚本,它使用内置的echo函数将文本“The Best PHP Examples”输出到页面:




Developer News

其结果是:

Developer News
The Best PHP Examples

注释

PHP支持几种注释方式:

  • 单行注释:

  • 多行注释:

区分大小写

所有关键字、类和函数都不区分大小写。

在下面的示例中,三个echo语句都是有效的:

";
echo "Welcome to Developer News
"; echo "Enjoy all of the ad-free articles
"; ?>

但是,所有变量名都区分大小写。在下面的示例中,只有第一条语句有效,并且将显示$name变量的值。$NAME$NaME都被视为不同的变量:

";
echo "Hi! My name is " . $NAME . "
"; echo "Hi! My name is " . $NaMe . "
"; ?>

变量

变量是PHP程序中存储信息的主要方式。

PHP中的所有变量都以美元符号开头,比如$variable_name。若要指定变量,请使用=运算符,左侧为变量名称,右侧为要计算的表达式。

PHP变量规则

  • 变量声明以$开头,后跟变量名称

  • 变量名称只能以大写或小写字母或下划线(_)开头

  • 变量名称只能包含字母、数字或下划线(A-z、0-9和_)。其他特殊字符,如+-%(). &无效

  • 变量名称区分大小写

预定义变量

PHP有几个特殊关键字,虽然它们是“有效”变量名,但不能用于变量。原因是语言本身已经定义了这些变量,并且它们被用于特殊目的。下面列出了几个示例

  • $this

  • $_GET

  • $_POST

  • $_SERVER

  • $_FILES

PHP数据类型

变量可以存储不同类型的数据,例如:

  • String ("Hello")

  • Integer (5)

  • Float (1.0)

  • Boolean ( 1 or 0 )

  • Array ( array("I", "am", "an", "array") )

  • Object

  • NULL

  • Resource

字符串

字符串是一系列字符。它可以是引号内的任何文本(单引号或双引号),可以用来存储应用程序中的任何文本信息。在PHP中有许多不同的方法可以创建字符串。

单引号

可以使用单引号创建简单字符串。要在字符串中包含单引号,请使用反斜杠将其转义。

双引号

也可以使用双引号创建字符串。要包含双引号,请使用反斜杠将其转义。双引号字符串也允许转义序列。这些是特殊的代码,将字符放入字符串中,这些字符代表典型的不可见字符。示例包括换行\n、制表符\t和反斜杠\\。您还可以将PHP变量嵌入双引号字符串中,以便将它们的值添加到字符串中。

整数

整数数据类型是介于-2147483648和2147483647之间的非十进制数。

整数规则:

  • 整数必须至少有一个数字

  • 整数不能有小数点

  • 整数可以是正的也可以是负的

浮点数

浮点数或浮点数是带有小数点的数字。

布尔值

布尔值表示两种可能的状态:TRUE或FALSE。布尔函数通常用于条件测试。

数组

数组在一个变量中存储多个值。

ECTouch移动商城系统
ECTouch移动商城系统

ECTouch是上海商创网络科技有限公司推出的一套基于 PHP 和 MySQL 数据库构建的开源且易于使用的移动商城网店系统!应用于各种服务器平台的高效、快速和易于管理的网店解决方案,采用稳定的MVC框架开发,完美对接ecshop系统与模板堂众多模板,为中小企业提供最佳的移动电商解决方案。ECTouch程序源代码完全无加密。安装时只需将已集成的文件夹放进指定位置,通过浏览器访问一键安装,无需对已有

下载

Null

Null是一种特殊的数据类型,其值只能为Null。变量可以不带值声明,也可以通过将值设置为null来清空。此外,如果创建变量时没有赋值,则会自动将其赋值为null。

类和对象

类是对现实世界中的事物建模有用的数据结构,可以包含属性和方法。

PHP资源

资源是一个特殊变量,包含对外部资源的引用。资源由特殊功能创建和使用。可以使用getresourcetype()函数查看资源类型。

字符串函数

求字符串的长度

strlen()函数的作用是:返回字符串的长度。

查找字符串中的字数

strwordcount()函数的作用是:返回字符串中的字数

反转字符串

strrev()函数的作用是:反转字符串

搜索字符串中的文本

strpos()函数的作用是:搜索字符串中的文本

替换字符串中的文本

str_replace()函数的作用是:替换字符串中的文本

常量

常量是PHP中的一种变量。设置常量的define()函数包含三个参数:键名、键的值和布尔值(true或false),该布尔值决定键的名称是否不区分大小写(默认为false)。设置常量值后,不能更改该值。它用于很少更改的值(例如数据库密码或API密钥)。

范围解析操作符

重要的是要知道,与变量不同,常量总是具有全局作用域,并且可以从脚本中的任何函数进行访问。此外,当您创建类时,您可以声明自己的常量。

注意:如果要在Human类中使用这些常量,可以将它们称为self::CONSTANT_ NAME。如果要在类外使用它们,需要将它们称为Human::CONSTANT_NAME

运算符

PHP包含了人们期望在编程语言中找到的所有普通操作符。单个“=”用作赋值运算符,双“==”或三个“===”用于比较。通常的“”也可用于比较,“+=”可用于添加值并同时赋值。最值得注意的是使用“.”连接字符串和“.”将一个字符串附加到另一个字符串的末尾。php7.0.X的新特性是Spaceship操作符()。当$a小于、等于或大于$b时,spaceship操作符返回-1、0或1。

If/Else/Elseif语句

如果/或是条件语句,根据条件的真实性,将执行不同的操作。

注意:只有条件有多个语句时,{}括号才需要;但是不管怎样,最好还是将它们包括进来。

If语句

注意:您可以在一个“if”块中嵌套任意多的语句;您不限于示例中的数量。

If/Else语句

注意:else语句是可选的。

If/Elseif/Else语句

注:elseif应始终写为一个单词。

嵌套的If/Else语句

在大多种情况下,“or”(| |)、“xor”和“and”(&&)逻辑运算符可以同时使用。例如:

注意:当您有多个条件时,最好将单个条件包装在括号中(这样可以提高可读性)。

三元运算符

三元运算符基本上是单行if/else语句。

假设您需要在用户登录时显示“Hello(user name)”,在用户未登录时显示“Hello guest”。

三元运算符:

$message = 'Hello '.($user == !NULL ? $user : 'Guest');

Switch

在PHP中,Switch语句与JavaScript中Switch语句非常相似(请参阅JavaScript Switch指南以进行比较和对比)。它允许在许多不同的可能条件下进行快速的案例测试,代码的可读性也更高。

break

break;语句退出,继续运行应用程序的其余代码。如果不使用break;语句,则可能会运行多个案例和语句。

循环

当需要多次重复一个任务时,可以使用循环,而不是反复添加相同的代码。在循环中使用break;可以停止循环执行。

For循环

循环特定次数的代码块。

While循环

如果条件为真,则循环遍历代码块。

do…While循环

循环一次代码块,如果条件为真,则继续循环。

Foreach循环

循环遍历数组中每个值的代码块。

函数

函数是可以在程序中重复使用的语句块。

简单函数+调用

function say_hello() {
  return "Hello!";
  }echo say_hello();

简单函数+参数+调用

function say_hello($friend) {
  return "Hello " . $friend . "!";
  }echo say_hello('Tommy');

数组

数组类似于常规变量,但在有序列表中包含多个值。如果您有多个彼此相关的值,例如学生姓名列表或首都城市列表,则这可能很有用。

数组的类型

在PHP中,有两种类型的数组:索引数组和关联数组。每个都有自己的用途,我们将研究如何创建这些数组。

索引数组

索引数组是有序值的列表。数组中的每个值都分配了一个索引号。数组的索引总是从第一个值的0开始,然后从那里增加1。

关联数组

关联数组是通过键而不是索引号访问的值的列表。键可以是任何值,但它对于数组必须是唯一的。

多维数组

多维数组是包含其他数组的数组。这使您可以创建复杂的数据结构,以对非常复杂的数据组进行建模。

获取数组的长度-count()函数

count()函数的作用是:返回数组的长度(元素数);

排序数组

PHP提供了几个函数来对数组进行排序。我们将介绍不同的功能,并包括示例。

sort()

sort()函数的作用是:按字母/数字的升序(如A、B、C、D、E...5, 4, 3, 2, 1...)

rsort()

rsort()函数的作用是:按字母/数字降序(如Z、Y、X、W、V...5, 4, 3, 2, 1...)

asort()

asort()函数的作用是:按字母/数字的升序对关联数组进行排序(如A、B、C、D、E...5, 4, 3, 2, 1...)

ksort()

ksort()函数的作用是:按关键字按字母/数字的升序对关联数组进行排序...(如A、B、C、D、E...5, 4, 3, 2, 1...)

arsort()

arsort()函数的作用是:根据数组的值,按字母/数字降序对数组进行排序(如Z、Y、X、W、V...5, 4, 3, 2, 1...)

krsort()

krsort()函数的作用是:按关键字的字母/数字降序对关联数组进行排序(如Z、Y、X、W、V...5, 4, 3, 2, 1...)

表单

表单是用户输入数据或从网页中选择数据的一种方式。表单可以存储数据,也可以允许检索信息以供以后使用。要使表单以PHP这样的语言工作,您需要html中的一些基本属性。在大多数情况下,PHP使用“post”和“get”超级全局变量从表单获取数据。


  


这里的'method'属性告诉表单发送表单数据的方式。然后,“action”属性告诉表单数据发送到哪里。“name”属性非常重要,它应该是唯一的,因为在PHP中,name的值作为输入字段的标识。

检查所需输入

PHP有几个函数来检查是否满足了所需的输入。这些函数是issetemptyis_numeric

检查表单以确保其设置正确

isset检查字段是否已设置并且不为空。

处理表单输入

可以使用全局变量$POST和$GET获取表单输入。

本文翻译自:https://www.freecodecamp.org/news/the-best-php-examples/

推荐学习:《PHP视频教程

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

php

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

72

2026.01.16

全民K歌得高分教程大全
全民K歌得高分教程大全

本专题整合了全民K歌得高分技巧汇总,阅读专题下面的文章了解更多详细内容。

132

2026.01.16

C++ 单元测试与代码质量保障
C++ 单元测试与代码质量保障

本专题系统讲解 C++ 在单元测试与代码质量保障方面的实战方法,包括测试驱动开发理念、Google Test/Google Mock 的使用、测试用例设计、边界条件验证、持续集成中的自动化测试流程,以及常见代码质量问题的发现与修复。通过工程化示例,帮助开发者建立 可测试、可维护、高质量的 C++ 项目体系。

54

2026.01.16

java数据库连接教程大全
java数据库连接教程大全

本专题整合了java数据库连接相关教程,阅读专题下面的文章了解更多详细内容。

39

2026.01.15

Java音频处理教程汇总
Java音频处理教程汇总

本专题整合了java音频处理教程大全,阅读专题下面的文章了解更多详细内容。

19

2026.01.15

windows查看wifi密码教程大全
windows查看wifi密码教程大全

本专题整合了windows查看wifi密码教程大全,阅读专题下面的文章了解更多详细内容。

85

2026.01.15

浏览器缓存清理方法汇总
浏览器缓存清理方法汇总

本专题整合了浏览器缓存清理教程汇总,阅读专题下面的文章了解更多详细内容。

43

2026.01.15

ps图片相关教程汇总
ps图片相关教程汇总

本专题整合了ps图片设置相关教程合集,阅读专题下面的文章了解更多详细内容。

11

2026.01.15

ppt一键生成相关合集
ppt一键生成相关合集

本专题整合了ppt一键生成相关教程汇总,阅读专题下面的的文章了解更多详细内容。

49

2026.01.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 8.8万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 7.8万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号