php基础知识快速入门

一、PHP基本知识

1、php介绍:

php是一种创建动态交互性的强有力的服务器脚本语言,PHP是开源免费的,并且使用广泛。PHP是解释性语言,按顺序从上往下执行,无需编译,直接运行。PHP脚本在服务器上运行。

2、php文件

php文件能够包含文本、html、css和php代码。php文件的后缀是“.php”,php代码在服务器上执行,而结果以纯文本返回浏览器。

3、php能够做什么

php能够生成动态页面内容(html页面渲染),php能够创建、打开、读取、写入、删除以及关闭服务器上的文件(文件操作);接收表单数据,能够发送并取回cookies。php能够添加、删除、修改数据库中的数据。php能够限制用户访问网站中的某些网页(权限管理)。php能够对数据进行加密和压缩。php通常用于小程序app浏览器插件等后端服务接口。

4、php的优点

php是跨平台的,可运行于各种平台(windows,linux,max os),php兼容几乎所有服务器(apache、nginx等)。php是免费的,同时支持多种数据库。

二、PHP语法

1、基础语法

php脚本以<? php 开头,以?>结尾。

php脚本可以放置于文档中的任何位置,文件扩展名是“.php”。php文件通常包含html标签以及一些php脚本代码。

php语句以分号结尾;

注意事项:

        html,js,css可以写在php文件里面运行,但php不能写在html,js文件中运行。

<!DOCTYPE html>
<html><body><?php echo "hello";?>
</body></html>

2、输出方法:echo 和print

       echo——能够输出一个以上的字符串,英文逗号隔开。

        print——只能输出一个字符串,并始终返回1.

echo比print稍快,并且开销低。

注意事项:

       print和echo在使用的时候,带括号和不带括号执行的效果都是一样的。

<!DOCTYPE html>
<html><body><?php echo "hello";?><?phpecho "<h1>原野小路</h1>";echo "helloxiaohu";echo "beijing","shanghai";?>
</body>
</html>

3、注释

        注释不会被作为程序来读取和执行,它唯一的作用是供代码编辑者阅读。

可以使用:

        "//","#"两个都是单行注释。

        “/* */”多行注释

4、变量

php变量特点:在php脚本中,不必告知php变量的数据类型,php根据它的值,自动把变量转换为正确的数据 类型。

变量是存储信息的容器,优点类似于数学中的代数:x=1,y=2

变量命名规则:

        变量以$符号开头,后面紧跟的是变量的名称

        变量名称必须以字母或下划线开头

         变量名称不能以数字开头,不能有空格

        变量名称只能包含字母数字字符和下划线

        变量名称对大小写敏感

注意事项:“=”并不是真正的等号,而是赋值符号。

<!DOCTYPE html>
<html><body><?php echo "hello";?><?phpecho "<h1>原野小路</h1>";echo "helloxiaohu";echo "beijing","shanghai";?><?php$name="<h1>php languange</h1>";echo $name?>
</body>
</html>

命名规范方法:

        下划线命名法:$student_name="xiaohu"

          小驼峰命名法:$student_Name="xiaohu"

        大驼峰命名法:$Student_Name="xiaohu"

5、大小写敏感

        所有用户定义的函数、类和关键词(if,else,echo等)都对大小写不敏感。但是所有的变量都对大小写敏感。

<!DOCTYPE html>
<html><body><?php echo "<h1>xiaohu<h1>";ECHO "<h1>xiaohu<h1>"?>
</body>
</html>

6、命令行的使用

        可以像Python一样在命令行里面运行php,用cmd或者vscode插件“code runner”

可以获取用户输入的内容,代码如下:

第一种方法:readline函数

<?php
$input = readline("请输入内容:");
echo "你输入的内容为:" . $input;
?>

第二种方法:fgets函数

<?php
echo "请输入内容:";
$input = fgets(STDIN);
echo "你输入的内容为:" . $input;
?>

7、数据类型

php中常见的数据类型有:字符串、整数、浮点数,逻辑(布尔值),数组,对象,NULL等。资源类型用var_dump()会返回变量的数据类型和值,一般用于开发调试时使用。

只获取数据类型 echo gettype($a)

<?php
$name="beijing 北京";
echo gettype($name);
echo "\n";
echo var_dump($name)
?>

(1)字符串

        字符串是字符序列,如“hello world”

字符串可以是引号内的任何文本,可以使用单引号或双引号。

单引号和双引号的区别:

        双引号内可以直接将变量渲染出来,但是单引号内的变量不能被渲染出来。

(2)整数

        整数必须至少有一个数字(0~9),整数不能包含逗号或空格。整数不能有小数点,整数正负均可,可以使用三种格式化规定整数:十进制、十六进制(前缀是0x),或八进制(前缀是0)。

(3)浮点数

        浮点数是由小数点或指数形式的数字。

(4)逻辑(布尔值)

        True和False

(5)数组

        在一个变量中存储多个值,分为以为数组和多维数组。

<?php $names=array("xiaohong","xiaozhang","xiaoli");$name1s=["xiujie","xincun"];var_dump($names);var_dump($name1s);
?>

(6)NULL

特殊的NULL值表示变量无值,NULL是数据类型NULL唯一可能得值。

用途:可以通过设置变量值为NULL来清空变量数据。

三、EOF(heredoc)定界符使用说明

        以<<<EOF开始标记开始,以EOF结束标记表示结束。

结束标记必须顶头写,独写占一行,不能有缩进和空格。在结束标记末尾要有分号。

EOF可以用任意其它字符代替,开始标记和结束标记相同即可。只要保证标记和结束标记不在正文中出现即可。

位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不可以,在heredoc中,变量不需要用连接符"."或“,”来拼接。

当内容需要内嵌引号(单引号或双引号)时,不需要加转义符,本身对单双引号转义。

<?php 
$name='xincun';
echo <<< EOF
$name
is
a
"student"
EOF;

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

动态规划(dp)(二)

按摩师 按摩师 1.状态表示 dp【i】表示&#xff1a;到i位置时&#xff0c;此时最长时长 继续细化&#xff1a;在i位置选预约&#xff0c;或不选预约 f【i】&#xff1a;到i位置时&#xff0c;nums【i】必选的&#xff0c;最长时长 g【i】&#xff1a;到i位置时&#xff0c…

仅为娱乐,Python中如何重定义True为False?

在Python中&#xff0c;True 和 False 是内建的布尔常量&#xff0c;分别代表逻辑上的真和假。它们是不可变的&#xff0c;且在Python语言规范中具有特殊地位&#xff0c;不能被用户直接重定义。尝试给 True 或 False 赋予新的值是违反Python语言规则的&#xff0c;这样的操作会…

刷题记录4.17-5.6

文章目录 刷题记录27.移除元素977.有序数组的平方209.长度最小的子数组707.设计链表206.反转链表24.两两交换链表中的节点19.删除链表的倒数第N个节点142.环形链表II242.有效的字母异位词349.两个数组的交集454.四数相加II18.四数之和151.反转字符串中的单词459.重复的子字符串…

Educational Codeforces Round 165 (Rated for Div. 2) E. Unique Array 贪心+线段树

Unique Array 题目描述 给你一个长度为 n n n 的整数数组 a a a 。 a a a 的子数组是其连续的子序列之一&#xff08;即数组 [ a l , a l 1 , … , a r ] [a_l, a_{l1}, \dots, a_r] [al​,al1​,…,ar​] 中的某个整数 l l l 和 r r r 的子数组 1 ≤ l < r ≤ n …

如何检查 MIDI 文件的安全性

检查 MIDI 文件的安全性通常涉及几个步骤&#xff0c;因为 MIDI 文件本身并不包含可执行代码&#xff0c;所以它们不是传统意义上的恶意软件载体。然而&#xff0c;它们仍然可能以间接的方式带来安全风险&#xff0c;例如通过诱导用户下载与 MIDI 文件一起提供的恶意附件或链接…

JS基础:变量的详解

你好&#xff0c;我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃&#xff0c;大专生&#xff0c;一枚程序媛&#xff0c;感谢关注。回复 “前端基础题”&#xff0c;可免费获得前端基础 100 题汇总&#xff0c;回复 “前端基础路线”&#xff0c;可获取…

Leetcode181_超过经理收入的员工

1.leetcode原题链接:. - 力扣&#xff08;LeetCode&#xff09; 2.题目描述 表&#xff1a;Employee ---------------------- | Column Name | Type | ---------------------- | id | int | | name | varchar | | salary | int | | manage…

零基础入门学习Python第二阶01生成式(推导式),数据结构

Python语言进阶 重要知识点 生成式&#xff08;推导式&#xff09;的用法 prices {AAPL: 191.88,GOOG: 1186.96,IBM: 149.24,ORCL: 48.44,ACN: 166.89,FB: 208.09,SYMC: 21.29}# 用股票价格大于100元的股票构造一个新的字典prices2 {key: value for key, value in prices.i…

病毒及网络攻击(信息安全)

一、病毒 计算机病毒的特征&#xff1a;传播性、隐蔽性、感染性、潜伏性、触发性、破坏性等 Worm -- 蠕虫病毒 Trojan -- 特洛伊木马 Backdoor -- 后门病毒 Macro -- 宏病毒 宏病毒 感染的对象主要是 文本文档、电子表格等 木马病毒&#xff1a;冰河 蠕虫病毒&#xff1a;欢乐时…

Java的java.util.concurrent.ExecutorService简介

在Java并发编程的璀璨星空中&#xff0c;ExecutorService无疑是那颗最耀眼的明星。它不仅是Java并发编程的核心组件之一&#xff0c;更是构建高并发、高性能应用的秘密武器。今天&#xff0c;我们就来一场说走就走的探索之旅&#xff0c;揭开它的神秘面纱&#xff01; &#x1…

关于排序算法这一篇就够了

排序算法是计算机科学中的一个基本问题&#xff0c;它涉及到将一组数据元素&#xff08;如整数、浮点数、字符串等&#xff09;按照某种顺序&#xff08;如升序或降序&#xff09;进行排列。以下是您提到的几种排序算法的概念和相应的Java实现&#xff1a; 1. 冒泡排序&#x…

已解决javax.sound.sampled.LineUnavailableException异常的正确解决方法,亲测有效!!!

已解决javax.sound.sampled.LineUnavailableException异常的正确解决方法&#xff0c;亲测有效&#xff01;&#xff01;&#xff01; 目录 问题分析 出现问题的场景 报错原因 解决思路 解决方法 检查音频设备是否被其他应用占用 确认音频格式设置 更新或重装音频驱动…

深度学习中的不确定性量化:技术、应用和挑战综述(一)

不确定性量化(UQ)在减少优化和决策过程中的不确定性方面起着关键作用&#xff0c;应用于解决各种现实世界的科学和工程应用。贝叶斯近似和集成学习技术是文献中使用最广泛的两种UQ方法。在这方面&#xff0c;研究人员提出了不同的UQ方法&#xff0c;并测试了它们在各种应用中的…

vscode查看linux内核代码报错“Unknown argument:“无法跳转函数问题

vscode查看linux内核代码报错问题 现在一直使用bearclangdvscode查看代码&#xff0c; 今天用gcc 9.4.0版本编译Linux 6.6内核代码&#xff0c;编译后发现无法函数跳转。 vscode报错信息如下&#xff1a; Unknown argument: -fconserve-stack Unknown argument: -femit-stru…

Ansible自动化运维工具单模块介绍

前言 自动化运维是指利用自动化工具和技术来简化、自动化和优化IT基础设施的管理和运维过程&#xff0c;从而提高效率、降低成本&#xff0c;并减少人为错误。在当今复杂的IT环境中&#xff0c;自动化运维已经成为许多组织和企业提高生产力和保证系统稳定性的重要手段。Ansibl…

动态规划算法:路径问题

例题一 解法&#xff08;动态规划&#xff09;&#xff1a; 算法思路&#xff1a; 1. 状态表⽰&#xff1a; 对于这种「路径类」的问题&#xff0c;我们的状态表⽰⼀般有两种形式&#xff1a; i. 从 [i, j] 位置出发&#xff0c;巴拉巴拉&#xff1b; ii. 从起始位置出…

使用Simcenter全面评估SiC 器件的特性

内容摘要 传统的硅金属-氧化物-半导体场效应晶体管 (MOSFET) 具有成熟的技术和低廉的成本&#xff0c;在中压和绝缘栅双极晶体管 (IGBT) 高压功率电子器件中占主导地位。使用碳化硅等具有高电离能的新型宽带隙材料&#xff0c;可以制造出具有快速开关时间和超过1,000伏击穿电压…

博客网站SpringBoot+Vue项目练习

博客网站SpringBootVue简单案例 前言 学了vue后一直没用找到应用的机会&#xff0c;在Github上找到了一个看起来比较友好的项目&#xff08;其实具体代码我还没看过&#xff09;。而且这个项目作者的readme文档写的也算是比较好的了。 项目链接&#xff1a;https://github.c…

【LeetCode刷题】739. 每日温度(单调栈)

1. 题目链接2. 题目描述3. 解题方法4. 代码 1. 题目链接 739. 每日温度 2. 题目描述 3. 解题方法 用一个栈st保存每个数的下标&#xff0c;同时创建一个数组res保存结果&#xff0c;初始值都为0。循环遍历题目中的数组temperature。如果temperature[i] > st.top()&#x…

MATLAB和Python网格桁架框架构件刚度载荷位移和受力微分方程

&#x1f3af;要点 数学​方法​&#xff1a;&#x1f3af;一维线性边界值问题&#xff1a;&#x1f58a;高斯求积法则 | &#x1f58a;洛巴托求积法则 | &#x1f58a;矩阵插值和微分计算 | &#x1f58a;在细化网格上生成值。&#x1f3af;二维边界值问题&#xff1a;构建二…