PHP基础教程

🐌博主主页:🐌​倔强的大蜗牛🐌​

📚专栏分类:PHP

📚参考教程:菜鸟\编程网
❤️感谢大家点赞👍收藏⭐评论✍️

目录

一、PHP语法

基本的 PHP 语法

 PHP 注释

 PHP空白不敏感

PHP区分大小写

二、PHP 变量

三、PHP常量

什么是常量

设置 PHP 常量 

常量和变量的区别

PHP魔术常量 

四、PHP echo 和 print 语句 

PHP echo 语句 

PHP print 语句

五、命名空间使用

六、PHP打开和关闭文件


一、PHP语法

基本的 PHP 语法

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

PHP 脚本可以放在文档中的任何位置。

PHP 脚本以 <?php 开始,以 ?> 结束:

<?php
// PHP 代码
?>

PHP 文件的默认文件扩展名是 .php

<!DOCTYPE html>
<html>
<body>


<?php
echo "Hello World!</br>";
print"Hello World!"
?>  

</body>
</html>

通过 PHP,有两种在浏览器输出文本的基础指令:echo 和 print。 

 PHP 注释

<!DOCTYPE html>
<html>
<body><?php
// 这是 PHP 单行注释
/*
这是 
PHP 多行
注释
*/
?>
</body>
</html>

 PHP空白不敏感

PHP空白不敏感意味着它几乎不会影响你在一行中有多少空白字符。

PHP区分大小写

PHP 语句和 PHP 变量都是区分大小写的

<html>
 <body>

    <?php
       $capital = 18;
       print("Da wo niu is $capital<br>");
       print("Da Wo Niu is $CaPiTaL<br>");
    ?>

 </body>
</html>

结果

Da wo niu is 18

Da Wo Niu is

二、PHP 变量

变量是用于存储信息的"容器":

PHP 变量规则:

  • 变量以 $ 符号开始,后面跟着变量的名称
  • 变量名必须以字母或者下划线字符开始
  • 变量名只能包含字母、数字以及下划线(A-z、0-9 和 _ )
  • 变量名不能包含空格
  • 变量名是区分大小写的($y 和 $Y 是两个不同的变量)

PHP总共有八种数据类型用于构建我们的变量:

  • 整数 - 是 整数 ,没有小数点,如4195。

  • 双精度 - 是浮点数,如3.14159或49.1。

  • 布尔 - 只有两个可能的值,无论是真或假。

  • NULL - 是一个只有一个值的特殊类型:NULL。

  • 字符串 - 是字符序列,如'PHP支持字符串操作'。

  • 数组 - 是其他值的命名和索引集合。

  • 对象 - 是程序员定义的类的实例,它可以打包特定于类的其他类型的值和函数。

  • 资源 - 是持有PHP外部资源引用的特殊变量(如数据库连接)。

 三、PHP常量

什么是常量

常量是简单值的名称或标识符。在执行脚本期间,常量值不能更改。默认情况下,常量区分大小写。按照惯例,常量标识符总是大写。常数名称以字母或下划线开头,后面跟着任意数量的字母,数字或下划线。如果你已经定义了一个常量,它永远不会被改变或未定义。

要定义一个常量,你必须使用define()函数并检索一个常量的值,你只需指定它的名字。与变量不同,你不需要在$时有一个常量。如果您希望动态获取常量名称,也可以使用函数constant()读取常量的值。

设置 PHP 常量 

设置常量,使用 define() 函数,函数语法如下:

<?php
// 定义一个常量
define("MINSIZE", 50);

// 使用常量
echo MINSIZE; // 输出 50
echo constant("MINSIZE"); // 输出 50,与上一行相同
?>

常量和变量的区别

  • 没有必要在一个常量之前写一个美元符号($),在变量中必须写一个美元符号。

  • 常量不能通过简单赋值来定义,它们只能使用define()函数来定义。

  • 可以在任何地方定义和访问常量,而不考虑变量范围规则。

  • 一旦常量被设置,可能不会被重新定义或未定义。

PHP魔术常量 

有五个神奇的常量根据它们的使用位置而变化。

序号名称和说明
1__LINE__
文件的当前行号。
2__FILE__
文件的完整路径和文件名。如果在include中使用,则返回包含文件的名称。从PHP 4.0.2开始, **__FILE__** 总是包含一个绝对路径,而在旧版本中它包含了在某些情况下的相对路径。
3__FUNCTION__
函数名称。(在PHP 4.3.0中添加)从PHP 5开始,此常量返回声明的函数名称(区分大小写)。在PHP 4中,它的值始终是小写的。
4__CLASS__
班级名称。(在PHP 4.3.0中添加)从PHP 5开始,此常量返回声明的类名(区分大小写)。在PHP 4中,它的值始终是小写的。
5__METHOD__
类方法名称。(在PHP 5.0.0中添加)方法名称在声明时区分大小写。

四、PHP echo 和 print 语句 

echo 和 print 区别:

  • echo - 可以输出一个或多个字符串
  • print - 只允许输出一个字符串,返回值总为 1

提示:echo 输出的速度比 print 快, echo 没有返回值,print有返回值1。

PHP echo 语句 

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

<?php
echo "<h2>PHP 很有趣!</h2>";
echo "Hello world!<br>";
echo "我要学 PHP!<br>";
echo "这是一个", "字符串,", "使用了", "多个", "参数。";
?>

PHP print 语句

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

<?php
print "<h2>PHP 很有趣!</h2>";
print "Hello world!<br>";
print "我要学习 PHP!";
?>

 五、命名空间使用

  1. 非限定名称,或不包含前缀的类名称,例如 $a=new foo(); 或 foo::staticmethod();。如果当前命名空间是 currentnamespace,foo 将被解析为 currentnamespace\foo。如果使用 foo 的代码是全局的,不包含在任何命名空间中的代码,则 foo 会被解析为foo。 警告:如果命名空间中的函数或常量未定义,则该非限定的函数名称或常量名称会被解析为全局函数名称或常量名称。

  2. 限定名称,或包含前缀的名称,例如 $a = new subnamespace\foo(); 或 subnamespace\foo::staticmethod();。如果当前的命名空间是 currentnamespace,则 foo 会被解析为 currentnamespace\subnamespace\foo。如果使用 foo 的代码是全局的,不包含在任何命名空间中的代码,foo 会被解析为subnamespace\foo。

  3. 完全限定名称,或包含了全局前缀操作符的名称,例如, $a = new \currentnamespace\foo(); 或 \currentnamespace\foo::staticmethod();。在这种情况下,foo 总是被解析为代码中的文字名(literal name)currentnamespace\foo。

六、PHP打开和关闭文件

 PHP fopen() 函数用于打开文件。它需要两个参数,首先说明文件名,然后说明操作模式。

Sr.No模式和目的
1r
打开文件仅供阅读。 将文件指针放在文件的开头。
2r+
打开文件进行读取和写入。 将文件指针放在文件的开头。
3w
仅打开文件以便写入。 将文件指针放在文件的开头。 并截断文件为零长度。如果文件没有 存在然后它试图创建一个文件。
4w+
仅打开文件以便读取和写入。 将文件指针放在文件的开头。 并截断文件为零长度。如果文件没有 存在然后它试图创建一个文件。
5a
仅打开文件以便写入。 将文件指针放在文件的末尾。 如果文件不存在,则会尝试创建文件。
6a+
仅打开文件以便读取和写入。 将文件指针放在文件的末尾。 如果文件不存在,则会尝试创建文件。

如果尝试打开文件失败,则 fopen 返回 false 值,否则返回 文件指针 ,用于进一步读取或写入该文件。

在对打开的文件进行更改后,使用 fclose() 函数关闭它很重要。该 FCLOSE() 函数需要一个文件指针作为它的参数,然后返回  当封盖成功或 错误 ,否则它失败。

❤️结语: 

本次精彩内容已圆满结束!希望各位读者在阅读过程中能够收获满满。在此,特别感谢各位读者的支持与三连赞。如果文章中存在任何问题或不足之处,欢迎在评论区留言,蜗牛必定会认真对待并加以改进,以便为大家呈现更优质的文章。你们的支持与鼓励,将是博主不断前进的最大动力。再次感谢大家的陪伴与支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/610693.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Kafka分级存储概念(一)

Kafka分级存储及实现原理 概述 Kafka社区在3.6版本引入了一个十分重要的特性: 分级存储,本系列文章主要旨在介绍Kafka分级存储的设计理念、设计细节以及具体的代码实现 背景:为什么要有分级存储? 场景 作为一款具有高吞吐及高性能的消息中间件,Kafka被广泛应用在大数据、…

Linux添加IP地址的方法

1.nmcli&#xff1a;命令式的添加IP地址 [rootlocalhost ~]#nmcli connection modify eno16777736 ipv4.addresses 192.168.126.100/24 ipv4.gateway 192.168.126.1 ipv4.method manual connection.autoconnect yes [rootlocalhost ~]# nmcli connection modify eno16777736 i…

Spring Cloud Alibaba Sentinel 集成与限流实战(6)

项目的源码地址 Spring Cloud Alibaba 工程搭建&#xff08;1&#xff09; Spring Cloud Alibaba 工程搭建连接数据库&#xff08;2&#xff09; Spring Cloud Alibaba 集成 nacos 以及整合 Ribbon 与 Feign 实现负载调用&#xff08;3&#xff09; Spring Cloud Alibaba Ribbo…

RFID在汽车制造中的应用如何改变行业

随着工业4.0和中国制造2025的推进&#xff0c;企业对于智能化、自动化的需求日益增长&#xff0c;RFID射频技术在制造业中已经相当普遍了。在如今这瞬息万变的行业与时代中&#xff0c;RFID技术可以帮助企业获得竞争优势&#xff0c;简化日益复杂的生产流程&#xff0c;推动企业…

*args和**kwargs的使用

*args传入的是按照顺序的不定长度的参数列表 **kwargs传入的是不定长度的键值对

AI 资料汇总专栏

包含AI资料、大模型资料、AI最新行业发展 人工智能&#xff08;Artificial Intelligence&#xff0c;简称AI&#xff09;是一门研究如何使计算机能够具备智能行为的科学与技术。它致力于开发出能够像人类一样思考、学习、理解和决策的计算机系统。自20世纪50年代以来&#xff…

《第一行代码》第二版学习笔记(11)——最佳的UI体验

文章目录 一、Toolbar二、滑动菜单1、DrawerLayout——抽屉2、NavigationView 三、悬浮按钮和可交互提示1、FloatingActionButton——悬浮按钮2、Snackbar——提示工具3、CoordinatorLayout 四、卡片式布局1、cardView2、AppBarLayout 五、下拉刷新——SwipeRefreshLayout六、可…

栈与递归的实现

1. 栈的概念及结构 栈&#xff1a;一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。 进行数据插入和删除操作的一端 称为栈顶&#xff0c;另一端称为栈底。 栈中的数据元素遵守后进先出LIFO&#xff08;Last In First Out&#xff09;的原则&#x…

教你解决PUBG绝地求生登不进去 无法进入游戏 启动很慢的问题

尽管《绝地求生》&#xff08;PUBG&#xff09;以它那扣人心弦的战术竞技和逼真模拟的战场氛围风靡全球&#xff0c;揽获无数玩家的喜爱&#xff0c;但一些玩家在经历了一场血脉喷张的生存较量后&#xff0c;却不得不面对一个不那么愉悦的后续&#xff1a;游戏在结算阶段后出现…

docker学习笔记(五):harbor仓库搭建与简单应用

harbor私有仓库 简介 Docker容器应用的开发和运行离不开可靠的镜像管理&#xff0c;虽然Docker官方也提供了公共的镜像仓库&#xff0c;但是从安全和效率等方面考虑&#xff0c;部署私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的Docker Registry管…

文献速递:深度学习医学影像心脏疾病检测与诊断--基于迁移学习的生成对抗网络用于静态和动态心脏PET的衰减校正

Title 题目 Transfer learning‑based attenuation correction for static and dynamic cardiac PET using a generative adversarial network 基于迁移学习的生成对抗网络用于静态和动态心脏PET的衰减校正 01 文献速递介绍 心脏正电子发射断层扫描&#xff08;PET&#xf…

JAVA入门1.1.0

前言&#xff1a; 不一样的编程——基于两个大前提&#xff0c;语言随便选一个&#xff0c;作者选java和c&#xff0c;在后续的内容会有c和java的共同使用 第一大前提&#xff1a;编程语言起源于语言 第二大前提&#xff1a;计算机理解不了语言的含义 这两大前提构成了不一样的…

Word设置代码块格式

前言 Word中无法像Markdown和LaTeX一样插入代码块&#xff0c;若要在Word中插入代码块可以手动设置代码块格式或自动粘贴代码块格式。若不追求完美高亮效果&#xff0c;可使用前者方案&#xff1b;若追求完美的高亮效果&#xff0c;可使用后者方案。下文介绍这2种方案。 手动…

渲染农场评测:6大热门云渲染平台全面比较

在3D行业中&#xff0c;选择一个合适的云渲染平台可能会令许多专业人士感到难以抉择。为此&#xff0c;我们精心准备了6家流行云渲染平台的详尽评测&#xff0c;旨在为您的决策过程提供实用的参考和支持。 目前&#xff0c;市面上主要的3D网络渲染平台包括六大服务商&#xff0…

SQL编程

用户变量的语法使用 #MySQL变量的定义与使用 #一、标识符命名规范 #1、字母加数字&#xff0c;但不允许使用数字开头 #2、不允许使用关键字或保留字 #3、符号只可以使用“_”或“$" #二、变量的声明 #set用于声明变量&#xff0c;update声明修改的表&#xff0c;set是声明…

OpenGL入门第三步:矩阵变换、坐标系统

1、矩阵变换 这里矩阵变换,使用4*4的矩阵,既可以表示位移,也可以表示缩放。 原因: 添加4维矩阵变量 initializeGL()函数:在着色器里面添加变换矩阵,改变坐标位置 设计一个随时间变换 ,所有重写TimerEvent 调用update触发paintGL()函数: 2、坐标系统

NSSCTF中的web学习(md5())

目录 MD5的学习 [BJDCTF 2020]easy_md5 [LitCTF 2023]Follow me and hack me [LitCTF 2023]Ping [SWPUCTF 2021 新生赛]easyupload3.0 [NSSCTF 2022 Spring Recruit]babyphp MD5的学习 md5()函数&#xff1a; md5($a)&#xff1a;返回a字符串的散列值 md5($a,TRUE)&…

C#中字典Dictionary与自定义类型CustomType之间的转换

C#中字典Dictionary与自定义类型CustomType之间的转换 思路&#xff1a; 可以使用反射System.Reflection来获取类的具体属性&#xff0c; 属性名称就映射字典的键Key。 新建控制台程序DictionaryCustomClassConversionDemo 第一步、新建关键转换类ConversionUtil。 类Con…

GB2312发码测试

编码表&#xff1a;https://www.toolhelper.cn/Encoding/GB2312 GB2312 编码表 GB 2312 标准由中国国家标准总局 1980 年发布&#xff0c;GB 即国标&#xff0c;共收录 6763 个汉字&#xff0c;其中一级汉字 3755 个&#xff0c;二级汉字 3008 个。 GB 2312 的出现&#xff0…

领导关怀 | 西湖区委常委韩斌等一行领导调研创邻科技

5月8日&#xff0c;西湖区委常委韩斌、紫金港科技城管委会党委委员、副主任陈杰、西湖区委办副主任韩鹰等一行领导走访创邻科技&#xff0c;关心企业发展近况。创邻科技COO吴菁、CTO周研陪同参观交流。 韩斌常委一行首先参观了企业荣誉展示区和办公区。参观过程中&#xff0c;…
最新文章