转载-PHP基础(上)-安装方法,语法,变量,echo和print语句,定界符使用,数据类型

    科技2022-08-30  120

    转载-PHP基础(上)-安装方法,语法,变量,echo和print语句,定界符使用,数据类型

    参考、引用与传送门:基本功能模块介绍PHP简介安装PHPPHP 语法PHP 变量PHP 5 echo 和 print 语句PHP echo 语句PHP print 语句 PHP定界符EOF(heredoc) 使用说明PHP 5 数据类型

    参考、引用与传送门:

    菜鸟教程-PHP php-wiki

    基本功能模块介绍

    PHP简介

    PHP(全称Hypertext Preprocessor即超文本预处理器)是一种通用脚本语言,也是服务器端脚本语言,特别适合于Web开发。PHP代码通常在Web服务器上由PHP解释器处理,该解释器以模块,守护程序或公共网关接口(CGI)可执行文件的形式实现。在Web服务器上,解释并执行的PHP代码(可能是任何类型的数据,例如生成的HTML或二进制图像数据)的结果将形成HTTP响应的全部或一部分。各种Web模板系统,Web内容管理系统和Web框架存在可以用来编排或促进该响应的产生。另外,PHP可用于Web上下文之外的许多编程任务,例如独立的图形应用程序和机器人无人机控制。也可以通过命令行界面(CLI)解释和执行任意PHP代码。到2020年9月,使用PHP的网站中,每三个网站中就有两个仍在使用已停用的PHP版本,并且几乎所有PHP网站中的一半都使用5.6或更早版本,甚至Debian都不支持(而Debian 9仍然支持版本)。 7.0和7.1,PHP开发团队不支持这些版本。此外,最受支持的受支持的PHP版本PHP 7.2将在不到2个月的时间内于2020年11月30日停止更新安全性,因此,除非将PHP网站升级到7.3版(或更高版本),因此,有84%的PHP网站将使用停产的版本。PHP 文件是什么? PHP 文件可包含文本、HTML、JavaScript代码和 PHP 代码 PHP 代码在服务器上执行,结果以纯 HTML 形式返回给浏览器 PHP 文件的默认文件扩展名是 “.php”PHP 能做什么? PHP 可以生成动态页面内容 PHP 可以创建、打开、读取、写入、关闭服务器上的文件 PHP 可以收集表单数据 PHP 可以发送和接收 cookies PHP 可以添加、删除、修改您的数据库中的数据 PHP 可以限制用户访问您的网站上的一些页面 PHP 可以加密数据 通过 PHP,您不再限于输出 HTML。您可以输出图像、PDF 文件,甚至 Flash 电影。您还可以输出任意的文本,比如 XHTML 和 XML。为什么使用 PHP? PHP 可在不同的平台上运行(Windows、Linux、Unix、Mac OS X 等) PHP 与目前几乎所有的正在被使用的服务器相兼容(Apache、IIS 等) PHP 提供了广泛的数据库支持 PHP 是免费的,可从官方的 PHP 资源下载它: www.php.net PHP 易于学习,并可高效地运行在服务器端

    安装PHP

    在您自己的 PC 机上建立 PHP 然而,如果您的服务器不支持 PHP,您必须: 安装 Web 服务器 安装 PHP 安装数据库,比如 MySQL 官方 PHP 网站(PHP.net)有 PHP 的安装说明: http://php.net/manual/en/install.phpPHP 服务器组件 对于初学者建议使用集成的服务器组件,它已经包含了 PHP、Apache、Mysql 等服务,免去了开发人员将时间花费在繁琐的配置环境过程。 WampServer Windows 系统可以使用 WampServer,下载地址:http://www.wampserver.com/,支持32位和64位系统,根据自己的系统选择版本。 WampServer 安装也简单,你只需要一直点击 “Next” 就可以完成安装了。 XAMPP XAMPP 支持 Mac OS 和 Windows 系统,下载地址:https://www.apachefriends.org/zh_cn/index.html。IDE (Integrated Development Environment,集成开发环境)Eclipse for PHP(免费) Eclipse 是一个开放源代码的、基于Java的可扩展开发平台(如果未安装JDK,则需要先 下载 JDK 安装)。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。 支持 Windows、Linux 和 Mac OS 平台。 Eclipse for PHP 官方下载地址:http://www.eclipse.org/downloads/packages/eclipse-php-developers/heliosrPhpStorm(收费) PhpStorm是一个轻量级且便捷的PHP IDE,其旨在提供用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查。 PhpStorm 非常适合于PHP开发人员及前端工程师。提供诸于:智能HTML/CSS/JavaScript/PHP编辑、代码质量分析、版本控制集成(SVN、GIT)、调试和测试等功能。 支持 Windows、Linux 和 Mac OS 平台。 PhpStorm 官方下载地址:http://www.jetbrains.com/phpstorm/download/

    PHP 语法

    PHP 脚本在服务器上执行,然后将纯 HTML 结果发送回浏览器。

    基本的 PHP 语法 PHP 脚本可以放在文档中的任何位置。 PHP 脚本以 <?php 开始,以 ?> 结束: <?php // PHP 代码 ?>

    PHP 文件的默认文件扩展名是 “.php”。 PHP 文件通常包含 HTML 标签和一些 PHP 脚本代码。 下面,我们提供了一个简单的 PHP 文件实例,它可以向浏览器输出文本 “Hello World!”:

    <!DOCTYPE html> <html> <body> <h1>My first PHP page</h1> <?php echo "Hello World!"; ?> </body> </html>

    PHP 中的每个代码行都必须以分号结束。分号是一种分隔符,用于把指令集区分开来。 通过 PHP,有两种在浏览器输出文本的基础指令:echo 和 print。

    PHP 中的注释 和C语言类似,//用于单行注释,/*...*/ 用于多行注释

    PHP 变量

    变量是用于存储数据的"容器":

    实例: <?php $x=5; $y=6; $z=$x+$y; echo $z; ?> PHP 变量 与代数类似,可以给 PHP 变量赋予某个值(x=5)或者表达式(z=x+y)。 变量可以是很短的名称(如 x 和 y)或者更具描述性的名称(如 age、carname、totalvolume)。 PHP 变量规则: 变量以 $ 符号开始,后面跟着变量的名称 变量名必须以字母或者下划线字符开始 变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ ) 变量名不能包含空格 变量名是区分大小写的($y 和 $Y 是两个不同的变量)创建(声明)PHP 变量 PHP 没有声明变量的命令。 变量在您第一次赋值给它的时候被创建: $txt="Hello world!";

    当您赋一个文本值给变量时,请在文本值两侧加上引号。

    PHP 是一门弱类型语言 在上面的实例中,我们注意到,不必向 PHP 声明该变量的数据类型。 PHP 会根据变量的值,自动把变量转换为正确的数据类型。 在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称。PHP 变量作用域 变量的作用域是脚本中变量可被引用/使用的部分。 PHP 有四种不同的变量作用域: local 局部作用域 global 全局作用域 static 静态作用域 parameter 函数参数作用域局部和全局作用域 在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用 global 关键字。 在 PHP 函数内部声明的变量是局部变量,仅能在函数内部访问: <?php $x=5; // 全局变量 function myTest() { $y=10; // 局部变量 echo "<p>测试函数内变量:<p>"; echo "变量 x 为: $x"; echo "<br>"; echo "变量 y 为: $y"; } myTest(); echo "<p>测试函数外变量:<p>"; echo "变量 x 为: $x"; echo "<br>"; echo "变量 y 为: $y"; ?>

    在以上实例中 myTest() 函数定义了 $x 和 $y 变量。 $x 变量在函数外声明,所以它是全局变量 , $y 变量在函数内声明所以它是局部变量。 当我们调用myTest()函数并输出两个变量的值, 函数将会输出局部变量 $y 的值,但是不能输出 $x 的值(表现为输出空白),因为 $x 变量在函数外定义,无法在函数内使用,如果要在一个函数中访问一个全局变量,需要使用 global 关键字。 然后我们在myTest()函数外输出两个变量的值,函数将会输出全局变量 $x 的值,但是不能输出 $y 的值(表现为输出空白),因为 $y 变量在函数中定义,属于局部变量。 注:你可以在不同函数中使用相同的变量名称,因为这些函数内定义的变量名是局部变量,只作用于该函数内。

    PHP global 关键字 global 关键字用于函数内访问全局变量。 在函数内调用函数外定义的全局变量,我们需要在函数中的变量前加上 global 关键字: function myTest() { global $x,$y; $y=$x+$y;//这样就可以修改在外面定义的下x,y的值 }

    PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。 上面的实例可以写成这样:

    function myTest() { $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']; } Static 作用域 当一个函数完成时,它的所有变量通常都会被删除。然而,有时候您希望某个局部变量不要被删除。 要做到这一点,请在您第一次声明变量时使用 static 关键字: <?php function myTest() { static $x=0; echo $x; $x++; echo PHP_EOL; // 换行符 } myTest(); myTest(); myTest(); ?>

    该程序运行结果是:0 1 2,因为每次调用该函数时,该变量将会保留着函数前一次被调用时的值。

    参数作用域 参数是通过调用代码将值传递给函数的局部变量。 参数是在参数列表中声明的,作为函数声明的一部分: <?php function myTest($x) { echo $x; } myTest(5); ?>

    PHP 5 echo 和 print 语句

    echo 和 print 区别: echo - 可以输出一个或多个字符串 print - 只允许输出一个字符串,返回值总为 1 注:echo 输出的速度比 print 快, echo 没有返回值,print有返回值1。

    PHP echo 语句

    echo 是一个语言结构,使用的时候可以不用加括号,也可以加上括号: echo 或 echo()。

    显示字符串 下面的实例演示了如何使用 echo 命令输出字符串(字符串可以包含 HTML 标签): <?php echo "<h2>PHP 很有趣!</h2>";//使用了html的标题标签 echo "Hello world!<br>"; echo "我要学 PHP!<br>"; echo "这是一个", "字符串,", "使用了", "多个", "参数。";//输出一句连续的话 ?> 显示变量 下面的实例演示了如何使用 echo 命令输出变量和字符串: <?php $txt1="学习 PHP"; $txt2="RUNOOB.COM"; $cars=array("Volvo","BMW","Toyota");//声明了一个数组 echo $txt1; echo "<br>"; echo "在 $txt2 学习 PHP "; echo "<br>"; echo "我车的品牌是 {$cars[0]}"; ?>

    PHP print 语句

    print 同样是一个语言结构,可以使用括号,也可以不使用括号: print 或 print()。

    print语句的输出和echo语句相同,只是无法输出多个字符串。 print "这是一个", "字符串,", "使用了", "多个", "参数。";//会提示语法错误

    PHP定界符EOF(heredoc) 使用说明

    PHP EOF(heredoc)是一种在命令行shell(如sh、csh、ksh、bash、PowerShell和zsh)和程序语言(像Perl、PHP、Python和Ruby)里定义一个字符串的方法。作用就是按照原样,包括换行格式什么的,输出在其内部的东西;使用概述: 1 . 必须后接分号,否则编译通不过。 2 . EOF 可以用任意其它字符代替,只需保证结束标识与开始标识一致。 3 . 结束标识必须顶格独自占一行(即必须从行首开始,前后不能衔接任何空白和字符)。 4 . 开始标识可以不带引号或带单双引号,不带引号与带双引号效果一致,解释内嵌的变量和转义符号,带单引号则不解释内嵌的变量和转义符号。 5 . 当内容需要内嵌引号(单引号或双引号)时,不需要加转义符,本身对单双引号转义,此处相当与q和qq的用法。 <?php echo <<<EOF <h1>我的第一个标题</h1> <p>我的第一个段落。</p> EOF; // 结束需要独立一行且前后不能空格 ?

    注意: 1.以 <<<EOF 开始标记开始,以 EOF 结束标记结束,结束标记必须顶头写,不能有缩进和空格,且在结束标记末尾要有分号 。 2.开始标记和结束标记相同,比如常用大写的 EOT、EOD、EOF 来表示,但是不只限于那几个(也可以用:JSON、HTML等),只要保证开始标记和结束标记不在正文中出现即可。 3.位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不可以。在 heredoc 中,变量不需要用连接符 . 或 , 来拼接,如下:

    <?php $name="runoob"; $a= <<<EOF "abc"$name//变量不需要用连接符 . 或 , 来拼接 "123" EOF; // 结束需要独立一行且前后不能空格 echo $a; ?>

    PHP 5 数据类型

    String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值)。

    PHP 字符串 一个字符串是一串字符的序列,就像 “Hello world!”。 你可以将任何文本放在单引号或双引号中: $x = "Hello world!"; $x = 'Hello world!'; PHP 整型 整数规则: 整数必须至少有一个数字 (0-9) 整数不能包含逗号或空格 整数是没有小数点的 整数可以是正数或负数 整型可以用三种格式来指定:十进制, 十六进制( 以 0x 为前缀)或八进制(前缀为 0)。 var_dump( '参数1(必填参数)' , 参数n" ); $a = array(1, 2, 3, array("a", "b", "c")); var_dump($a);/*输出部分:array(4) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> array(3) { [0]=> string(1) "a" [1]=> string(1) "b" [2]=> string(1) "c" } } */

    var_dump() 方法,判断一个变量的类型与长度,并输出变量的数值,如果变量有值,则输出是变量的值,并返回数据类型。显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

    PHP 浮点型 浮点数是带小数部分的数字,或是指数形式(如2.4e3表示2.4*10^3=2400)。 var_dump($x);//会返回float(2400)PHP 布尔型 布尔型可以是 TRUE 或 FALSE。 $x=true; $y=false;PHP 数组 PHP 数组 $a = array(1, 2, 3, array("a", "b", "c")); var_dump($a); /*输出部分:array(4) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> array(3) { [0]=> string(1) "a" [1]=> string(1) "b" [2]=> string(1) "c" } }*/ PHP 对象 对象数据类型也可以用于存储数据。 在 PHP 中,对象必须声明。 首先,你必须使用class关键字声明类对象。类是可以包含属性和方法的结构。 然后我们在类中定义数据类型,然后在实例化的类中使用数据类型: <?php class Car { var $color; function __construct($color="green") { $this->color = $color; } function what_color() { return $this->color; } } ?>

    https://www.runoob.com/try/showphp.php?filename=demo_datatypes_object 以上实例中PHP关键字this就是指向当前对象实例的指针,不指向任何其他对象或类。

    PHP NULL 值 NULL 值表示变量没有值。NULL 是数据类型为 NULL 的值。 NULL 值指明一个变量是否为空值。 同样可用于数据空值和NULL值的区别。 可以通过设置变量值为 NULL 来清空变量数据: <?php $x="Hello world!"; $x=null; var_dump($x);//输出结果为NULL ?>
    Processed: 0.009, SQL: 9