广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP基础知识详细讲解
  • 531
分享到

PHP基础知识详细讲解

PHP基础知识PHP基础语法 2022-12-03 22:12:14 531人浏览 泡泡鱼
摘要

目录一、简介二、PHP基本语法三、变量和作用域四、常量五、数据类型六、运算符七、流程控制八、超全局变量一、简介 基础知识: 需要一定的html和CSS的语法知识 基本概念: php(

一、简介

基础知识:

需要一定的htmlCSS的语法知识

基本概念:

php(超文本预处理器)是一种通用开源脚本语言,在服务器上执行。

PHP文件:

  • PHP 文件可包含文本、HTML、javascript代码和 PHP 代码
  • PHP 代码在服务器上执行,结果以纯 HTML 形式返回给浏览器
  • PHP 文件的默认文件扩展名是 ".php"

二、php基本语法

<?php
#单行注释1
// 单行注释2

echo "<h1>hello world</h1>";
$name="coleak";
$mes="hello";
echo $mes." ".$name;
echo "<br>";
echo "my name is $name";
echo "<br>";
echo 'my name is $name';
echo "<br>";
var_dump($name);
// 调试函数,没有返回值
?>

三、变量和作用域

<?php
function fun()
{
    $y=0;//局部变量
    echo "y的值为: $y";
    echo "<br>";
    echo "x的值为: $x";
}
$x=1;//全局变量
fun();
echo "<br>";
echo "y:$y";
echo "<br>";
echo "x:$x";
?>

分析:此时函数内不能访问全局变量,需要使用globar $x; 函数外不能访问局部变量。

<?php
function fun()
{
    static $y=0;//静态变量
    echo "y的值为: $y";
    echo "<br>";
    $y++;
}
fun();
fun();
fun();
fun();
?>

四、常量

<?php
// 被替代的写法
define("mess","hello");
echo mess;
// 新写法
const name ='coleak';
echo name;
function fun()
{
    echo name;
}
fun();
?>

五、数据类型

布尔类型

<?php
$a=true;
$b=False;
if(is_bool($a))
    if(is_bool($b))
    echo 1;
?>

此时输出为1,不区分大小写的弱语言

heredoc和nowdoc

<?php
$a=true;
$b=False;
if(is_bool($a))
    if(is_bool($b))
    echo 1;
?>
<?php
$name="coleak";
$message=<<<'EOT'
hello $name
EOT;
echo $message;
?>

上面输出为hello coleak,下面输出为hello $name

数组

<?php
$a1=array('12',"12",12);
$a2=[1,2,3,4];
$a3=[
"hh"=>6,
5=>'coleak'
];
var_dump($a1);
echo "<br>";
var_dump($a2);
echo "<br>";
var_dump($a3);
echo "<br>";
unset($a3['hh']);
var_dump($a3);
?>

array(3) { [0]=> string(2) "12" [1]=> string(2) "12" [2]=> int(12) }

array(4) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) }

array(2) { ["hh"]=> int(6) [5]=> string(6) "coleak" }

array(1) { [5]=> string(6) "coleak" }

对象

<?php
class person
{
   var $count=1;
   function func()
   {
    echo $this->count;
   }
}
$per1=new person();
echo $per1->count;//后面的count前面不用加$号
echo "<br>";
$per1->func();
?>

此时输出为两个1

null

<?php
$a=1;
$b=2;
function fun()
{
    echo $a+$b;
    echo "<br>";
    var_dump($a);
    echo "<br>";
    var_dump($b);
    echo "<br>";
}
fun();
var_dump($a);
echo "<br>";
var_dump($b);
echo "<br>";
?>

0

NULL

NULL

int(1)

int(2)

<?php
$a=10;
unset($a);
var_dump($a+1);
echo $a+2;
echo "<br>";
var_dump($b+3);
echo $b+4;
?>

2

4

六、运算符

字符串运算符

<?php
$a="hello";
$b=$a."world";
$a.="world";
echo $b,"<br>";
echo $a;
?>

helloworld

helloworld

比较运算符

注意:当字符串遇到数字内容的比较时,如果不是使用绝对比较符,则会转化为对应的数字进行比较。

逻辑运算符

数组运算符

<?php
$a=[
"a"=>"aa",
"b"=>"bb"
];
$b=[
"a"=>"aaa",
"c"=>"cc"
];
$c=$a+$b;
var_dump($c);
?>

array(3) { ["a"]=> string(2) "aa" ["b"]=> string(2) "bb" ["c"]=> string(2) "cc" }

由此可以看出+时并没有覆盖重复的键。

三元操作符

<?php
// 写法一(老旧)
$a="coleak";
$name=$a?$a:"nobody";
echo $name;
// 新写法
$name2=$a?:'nobody';
echo "<br>",$name2;
?>

coleak

coleak

七、流程控制

<?php
$x=[1,2,3,4,5];
foreach ($x as $val)
{
    echo $val."<br>";
}
?>

1

2

3

4

5

八、超全局变量

<?php
$a=10;
$b=20;
function add()
{
    $GLOBALS['z']=$GLOBALS["a"]+$GLOBALS['b'];
}
add();
echo $z;
?>

30

POST方式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta Http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <fORM method="post" action="index.php">
        <p>my_add</p>
        <input type="text" name="add1">
        <br>
        <input type="text" name="add2">
        <br>
        <input type="submit" value="提交">
    </form>
</body>
</html>
<?php
$add1=$_REQUEST["add1"];//也可以用$_POST
$add2=$_REQUEST["add2"];//也可以用$_POST
$add=$add1+$add2;
echo $add;
?>

333

GET方式(不安全

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <form method="get" action="index.php">
        <p>Name:<input type="text" name="fname"></p>
        <p>PassWord:<input type="password" name="passw"></p>
        <p><input type="submit" value="提交"></p>
    </form>
</body>
</html>
<?php
$fname=$_GET["fname"];
$password=$_GET["passw"];
$message=<<<ETO
用户名称 $fname 用户密码 $password
ETO;
echo $message;
?>

到此这篇关于PHP基础知识详细讲解的文章就介绍到这了,更多相关PHP基础知识内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: PHP基础知识详细讲解

本文链接: https://www.lsjlt.com/news/174023.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PHP基础知识详细讲解
    目录一、简介二、php基本语法三、变量和作用域四、常量五、数据类型六、运算符七、流程控制八、超全局变量一、简介 基础知识: 需要一定的html和css的语法知识 基本概念: PHP(...
    99+
    2022-12-03
    PHP基础知识 PHP基础语法
  • 前端组件化基础知识详细讲解
    目录组件的基本概念对象与组件的区别组件 Component特性 AttributeAttribute 对比 PropertyAttribute:Property:Class 属性St...
    99+
    2022-11-12
  • Linux的基础知识讲解
    本篇内容主要讲解“Linux的基础知识讲解”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux的基础知识讲解”吧!计算机组成。CPU,: 运算器、控制器、寄存器、缓存;存储器: 内存(Ran...
    99+
    2023-06-05
  • Webshell基础知识深入讲解
    一、什么是Webshell? 顾名思义,“web”的含义是显然需要服务器开放web服务,“shell”的含义是取得对服务器某种程度上操作权限。webshell常常被称为入侵者通过网站端口对网站服务器的某种程度上操作的权限...
    99+
    2022-06-04
    Webshell基础知识 Webshell防范渗透 Webshell安全防范
  • ADO.NET基础知识详解
    ADO.NET是微软提供的一种数据库访问技术。 ADO.NET为不同类型的数据源提供了不同的数据提供程序对象: 数据提供程序说明SQL Server 数据提供程序提供对Microso...
    99+
    2022-11-13
  • 详解Zookeeper基础知识
    目录1. 简介2. 数据模型2.1 模型结构2.2 模型的特点2.3 节点分类2.3.1 Persistent2.3.2 Persistent Sequential2.3.3 Eph...
    99+
    2022-11-12
  • Javascript基础知识详解
    目录变量数据类型扩展点总结变量 基本语法 var age=10;//声明一个名称为age的变量,并且为它赋值,称为变量的初始化 var是一个JS关键字,用来声明...
    99+
    2022-11-12
  • C++超详细梳理基础知识
    目录命名空间的使用来源命名空间的使用不展开部分展开全展开函数重载函数重载的规则C++如何实现函数重载引用命名空间的使用 来源 在了解命名空间的原理和使用之前,我们先要理解,命名空间是...
    99+
    2022-11-13
  • 超详细的PHP入门知识点讲解
    目录 一、简介 二、php基本语法  二、变量和作用域 三、常量 四、数据类型 五、运算符 六、流程控制 七、超全局变量 一、简介 基础知识: 需要一定的html和css的语法知识 基本概念: PHP(超文本预处理器)是一种通用开源脚本...
    99+
    2023-09-25
    php 开发语言
  • linux基础知识-vmstat详解
    1. 前言 vmstat(VirtualMeomoryStatistics,虚拟内存统计)是一个不错的Linux/Unix监控工具,在性能测试中除了top外也是比较常用的工具之一,它可以监控操作系统的...
    99+
    2023-09-24
    linux 运维 服务器
  • linux基础知识-sar详解
    1.前言 sar(System Activity Reporter系统活动情况报告)是目前Linux比较全的系统性能分析工具之一,可以从多方面对系统的活动进行报告 ,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用...
    99+
    2023-08-19
    linux 服务器 运维
  • Android RecyclerView 基础知识详解
    本周的谷歌I/O大会带来了很多关于Android的振奋人心的消息。可能我们需要较长的时间来消化Android L引入的新东西。 这些天我一直在研究RecyclerView,并想...
    99+
    2022-06-06
    recyclerview Android
  • Webshell的基础知识点详细分析
    这篇文章主要介绍Webshell的基础知识点详细分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、什么是Webshell?顾名思义,“web”的含义是显然需要服务器开放web服务,“shell”的含义是取得对服务...
    99+
    2023-06-07
  • Java Swing最详细基础知识总结
    目录一、简介二、Swing 组件的层次结构三、Swing组件3.1 JFrame窗体组件3.2 JDialog窗体组件3.3 JLabel组件3.4 文本域3.5 按钮四.布局管理器...
    99+
    2022-11-12
  • Java枚举类知识详细讲解
    本篇内容主要讲解“Java枚举类知识详细讲解”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java枚举类知识详细讲解”吧!枚举(enum)类型是Java 5新增的特性,它是一种新的类型,允许用常...
    99+
    2023-06-02
  • 【MySQL】MySQL基础知识详解(一)
    MySQL select列的别名去除重复行空值参与运算着重号查询常数显示表结构过滤数据 排序使用 ORDER BY 对查询到的数据进行排序操作。使用列的别名,进行排序二级排序 分页LI...
    99+
    2023-09-04
    mysql 数据库 SQL
  • JavaWebServletContext基础与应用详细讲解
    目录ServletContext 基础知识获取 ServletContext对象特性context-param获取文件路径记录日志参数增删改查ServletContext 基础知识 ...
    99+
    2023-01-05
    JavaWeb ServletContext JavaWeb ServletContext应用
  • 计算机网络基础知识(非常详细)
    1. 网络模型 1.1 OSI 七层参考模型 七层模型,亦称 OSI(Open System Interconnection)参考模型,即开放式系统互联,是网络通信的标准模型。一般称为 OSI 参考模型或七层模型。 它是一个七层的、抽象的模...
    99+
    2023-09-12
    网络 服务器 运维
  • Java基础之数组超详细知识总结
    目录一、一维数组二、二维数组三、总结一、一维数组 1、Java语言中的数组是一种 引用数据类型。不属于基本数据类型。数组的父类是 Object。 2、数组实际上是一个容器,可以同时容...
    99+
    2022-11-12
  • 【JavaScript】讲解JavaScript的基础知识并且配有案例讲解
    🎊专栏【 前端易错合集】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【如愿】 大一同学小吉,欢迎并且感谢大家指出我的问题🥰 目录   Ἰ...
    99+
    2023-09-04
    javascript 开发语言 ecmascript
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作