PHP is a server-side scripting language created by Rasmus Lerdorf in 1995. It is a widely used open source general-purpose scripting language that is particularly suitable for web development and can be embedded into HTML.
As of March 2021, 85% of known server-side language websites use PHP. It is commonly used on websites to dynamically generate web content. Use cases include:
Websites and web applications (server-side scripting)
Command line scripting
Desktop (GUI) Application
Typically, it is used in the first form to dynamically generate web content. Other uses for PHP scripts include:
Processing and saving user input in form data
Setting and using website cookies
Restrict access to certain pages of the website
Facebook, the largest social networking platform, is written in PHP.
All PHP code is executed only on the web server, not on the local computer. For example, if you fill out a form on a website and submit it, or click a link to a web page written in PHP, no actual PHP code is running on your computer. Instead, form data or web page requests are sent to the web server, where they are processed by a PHP script. The web server then sends the processed HTML back to you (this is where the "hypertext preprocessor" in the name comes from) and the web browser displays the results. Therefore, you cannot see the PHP code of the website, only the HTML generated by the PHP script. The specific description is as follows:
PHP is an interpreted language. This means that when you make changes to your source code, you can immediately test those changes without first compiling the source code into binary form. Skipping the compilation step can speed up the development process. PHP code is encapsulated in php and ? > tag, which can then be embedded into HTML.
PHP can be installed with or without the web server.
On Debian-based GNU/Linux distributions, you can install via:
sudo apt install php
On Centos 6 or 7 , you can install it via:
sudo yum install php
Once installed, just do the following in the terminal to run any PHP file:
php file.php
You You can also install a localhost server to run PHP websites. Install Apache web server:
sudo apt install apache2 libapache2-mod-php
Or you can also install XAMPP (free open source cross-platform web server solution stack package) or similar package such as WAMP
Since writing the entire code for a website is not practical/feasible for most projects, most developers tend to use frameworks for web development . The benefit of using a framework is that you don't have to reinvent the wheel every time you create a project, a lot of the nuances are already taken care of for you
They are usually well-structured and therefore help with separation of concerns
Most frameworks tend to follow the best practices for the language
Many of them All follow the MVC (Model-View-Controller) pattern, so that the presentation layer can be separated from the logic layer
Popular framework
Symfony
Zend
CakePHP
FuelPHP
Slim
Yii 2
Basic syntaxPHP scripts can be placed anywhere in the document and always begin with <
? phpstarts withand ends with ? >. Additionally, PHP statements end with a semicolon (;). Here is a simple script that uses the built-in echo function to output the text "The Best PHP Examples" to the page:
<!DOCTYPE html> <html> <body> <h1>Developer News</h1> <?php echo "The Best PHP Examples"; ?> </body> </html>
The result is :
Developer News The Best PHP Examples
Comments
PHP supports several comment methods:Single-line comments:
Multi-line comments:
<?php // This is a single-line comment # You can also make single-line comments like this ?>
<?php /* This comment block spans over multiple lines */ ?>
Case-sensitive
<?php echo "Hello!<br>"; echo "Welcome to Developer News<br>"; echo "Enjoy all of the ad-free articles<br>"; ?>
但是,所有变量名都区分大小写。在下面的示例中,只有第一条语句有效,并且将显示$name变量的值。$NAME和$NaME都被视为不同的变量:
<?php $name = "Quincy"; echo "Hi! My name is " . $name . "<br>"; echo "Hi! My name is " . $NAME . "<br>"; echo "Hi! My name is " . $NaMe . "<br>"; ?>
变量是PHP程序中存储信息的主要方式。
PHP中的所有变量都以美元符号开头,比如$variable_name。若要指定变量,请使用=运算符,左侧为变量名称,右侧为要计算的表达式。
变量声明以$开头,后跟变量名称
变量名称只能以大写或小写字母或下划线(_)开头
变量名称只能包含字母、数字或下划线(A-z、0-9和_)。其他特殊字符,如+-%(). &无效
变量名称区分大小写
PHP有几个特殊关键字,虽然它们是“有效”变量名,但不能用于变量。原因是语言本身已经定义了这些变量,并且它们被用于特殊目的。下面列出了几个示例
$this
$_GET
$_POST
$_SERVER
$_FILES
变量可以存储不同类型的数据,例如:
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。布尔函数通常用于条件测试。
数组在一个变量中存储多个值。
Null是一种特殊的数据类型,其值只能为Null。变量可以不带值声明,也可以通过将值设置为null来清空。此外,如果创建变量时没有赋值,则会自动将其赋值为null。
类是对现实世界中的事物建模有用的数据结构,可以包含属性和方法。
资源是一个特殊变量,包含对外部资源的引用。资源由特殊功能创建和使用。可以使用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。
如果/或是条件语句,根据条件的真实性,将执行不同的操作。
注意:只有条件有多个语句时,{}括号才需要;但是不管怎样,最好还是将它们包括进来。
<?php if (condition) { statement1; statement2; }
注意:您可以在一个“if”块中嵌套任意多的语句;您不限于示例中的数量。
<?php if (condition) { statement1; statement2; } else { statement3; statement4; }
注意:else语句是可选的。
<?php if (condition1) { statement1; statement2; } elseif (condition2) { statement3; statement4; } else { statement5; }
注:elseif应始终写为一个单词。
<?php if (condition1) { if (condition2) { statement1; statement2; } else { statement3; statement4; } } else { if (condition3) { statement5; statement6; } else { statement7; statement8; } }
在大多种情况下,“or”(| |)、“xor”和“and”(&&)逻辑运算符可以同时使用。例如:
<?php if (condition1 && condition2) { echo 'Both conditions are true!'; } elseif (condition 1 || condition2) { echo 'One condition is true!'; } else (condition1 xor condition2) { echo 'One condition is true, and one condition is false!'; }
注意:当您有多个条件时,最好将单个条件包装在括号中(这样可以提高可读性)。
三元运算符基本上是单行if/else语句。
假设您需要在用户登录时显示“Hello(user name)”,在用户未登录时显示“Hello guest”。
三元运算符:
$message = 'Hello '.($user == !NULL ? $user : 'Guest');
在PHP中,Switch语句与JavaScript中Switch语句非常相似(请参阅JavaScript Switch指南以进行比较和对比)。它允许在许多不同的可能条件下进行快速的案例测试,代码的可读性也更高。
break;语句退出,继续运行应用程序的其余代码。如果不使用break;语句,则可能会运行多个案例和语句。
当需要多次重复一个任务时,可以使用循环,而不是反复添加相同的代码。在循环中使用break;可以停止循环执行。
循环特定次数的代码块。
如果条件为真,则循环遍历代码块。
循环一次代码块,如果条件为真,则继续循环。
循环遍历数组中每个值的代码块。
函数是可以在程序中重复使用的语句块。
简单函数+调用
function say_hello() { return "Hello!"; }echo say_hello();
简单函数+参数+调用
function say_hello($friend) { return "Hello " . $friend . "!"; }echo say_hello('Tommy');
数组类似于常规变量,但在有序列表中包含多个值。如果您有多个彼此相关的值,例如学生姓名列表或首都城市列表,则这可能很有用。
在PHP中,有两种类型的数组:索引数组和关联数组。每个都有自己的用途,我们将研究如何创建这些数组。
索引数组
索引数组是有序值的列表。数组中的每个值都分配了一个索引号。数组的索引总是从第一个值的0开始,然后从那里增加1。
关联数组
关联数组是通过键而不是索引号访问的值的列表。键可以是任何值,但它对于数组必须是唯一的。
多维数组
多维数组是包含其他数组的数组。这使您可以创建复杂的数据结构,以对非常复杂的数据组进行建模。
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”超级全局变量从表单获取数据。
<html><body> <form method="get" action="target_proccessor.php"> <input type="search" name="search" /><br /> <input type="submit" name="submit" value="Search" /><br /> </form><body></html>
这里的'method'属性告诉表单发送表单数据的方式。然后,“action”属性告诉表单数据发送到哪里。“name”属性非常重要,它应该是唯一的,因为在PHP中,name的值作为输入字段的标识。
PHP有几个函数来检查是否满足了所需的输入。这些函数是isset、empty和is_numeric。
检查表单以确保其设置正确
isset检查字段是否已设置并且不为空。
处理表单输入
可以使用全局变量$POST和$GET获取表单输入。
本文翻译自:https://www.freecodecamp.org/news/the-best-php-examples/
推荐学习:《PHP视频教程》