Web安全基础_PHP

目录

php概述

php基础

php注释

简单的php输出语句

php变量

php运算符 

php流程控制

php数组 

php函数

 php面向对象

php类定义

 php构造函数

php折构函数

php超级全局变量

php_Session 

php_Mysql连接 


php概述

php是一门用于开发网站的,运行在服务器端(也就是后端的)解释型编程语言(意味着php不需要编译就可以运行)。php的运行需要环境,建议在学习的时候用windows直接下载phpstudy学。

php基础

从哪开始算php代码?

php代码需要写在<?php ......?>中, .....为写php代码的位置。

php代码需要指令分隔符

这意味着每一条语句结束都需要用;英文分号结尾

php注释

单行注释:

1. // 注释一行

2. # 注释一行

多行注释:

/*.....*/ 注释多行 

简单的php输出语句

这里的输出是输出到前端页面,也就是用户浏览器页面

1. phpinfo;        用于输出php配置信息
2. echo;            用于输出变量值

3.var_dump();  用于输出变量值及其变量类型 

php变量

声明一个变量

$美元符号 + 变量名 = 变量值        例如:$a = 2;

释放一个变量

unset()

变量类型(然而大部分情况下不用声明变量类型,以下只是说在存储的时候有这些)

1.布尔类型: true和flase
2.int 整型
3.float 浮点型
4.字符串 string
5.数组  array[]
6.对象 object

php运算符 

算数运算符

    取反:-    $a = 10; 则 -$a = -10
    加减乘除:+ - * /
    取模(取余数):%

逻辑运算符
    非        !
    与        and  &&
    或        or  ||
    异或      xor    不同为真,相同为假

比较运算符
    比较参与运算的单元是否相同,相同为真,不同为假
    ==    只比较值而不比较类型(重点内容)
    ===    对类型也会进行比较,只有类型和值都相等才为真(重点内容)

    >
    >=
    <
    <=
    !=
    !==
    <>    不等于 

 字符串运算符
.    连接符,用于连接字符串

例如:echo "hello" . "world";

则会在前端页面输出helloworld

 赋值运算符
    =
    +=
    -=
    *=
    /=
    %=
    .=

 其他运算符
    ?: 三元运算符     例子:$a = false ? 10 : 20;   echo  $a;   输出:20
    `` 反引号:将字符串当作命令执行
    @屏蔽错误显示(重点)

php流程控制

 分支结构

    1.单向分支
        if(判断条件){执行语句};
    2.双向分支
        if(判断条件){执行语句}
        else{执行语句}
    3.多分支
        1.  if(){}
            elseif(){}
            elseif(){}
            elseif(){}
        2.switch(变量){
            case xxx:
                .......
            case xxx:
                .......
            defalut ....
        }

 循环结构

1.while(条件){执行语句}      当满足条件时执行
    2.do{....}while(条件)  先执行一次再判断
    3.for(xxx;xxx;xxx)

 特殊流程控制语句
    break  跳出循环
    break 2 跳出两层循环
    continue 跳过本次循环
    exit()    结束脚本执行
    die()    结束脚本执行

php数组 

数组是一个能在单个变量中存储多个值的特殊变量
php数组特点:数组的key可以是字符串,而values可以是任意类型

php数组类型

    数值数组    带有数字 ID 键的数组
    关联数组    带有指定的键的数组,每个键关联一个值
    多维数组    包含一个或多个数组的数组

数组定义

arrary();

举例:$me = array("handsome","clever","prettyGood");

php函数

php函数定义

语法
    function _functionName_()  
    {  
    _要执行的代码_;  
    }

php函数调用

functionName_() ;(有参函数传参,无参函数直接掉)

 php面向对象

php类定义

    <?php
    class phpClass {
      var $var1;
      var $var2 = "constant string";

      function myfunc ($arg1, $arg2) {
             [..]
          }
          [..]
        }
        ?>
    -   类使用 **class** 关键字后加上类名定义。
    -   类名后的一对大括号({})内可以定义变量和方法。
    -   类的变量使用 **var** 来声明, 变量也可以初始化值。
    -   函数定义类似 PHP 函数的定义,但函数只能通过该类及其实例化的对象访问。

 php构造函数

    构造函数 ,是一种特殊的方法。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。
    语法格式:
    void __construct ([ mixed $args [, $... ]] )

php折构函数

析构函数
    析构函数(destructor) 与构造函数相反,当对象结束其生命周期时(例如对象所在的函数已调用完毕),系统自动执行析构函数。
    PHP 5 引入了析构函数的概念,这类似于其它面向对象的语言,其语法格式如下:
    void __destruct ( void )

php超级全局变量

什么是超级全局变量?

PHP中预定义了几个超级全局变量,超级全局变量指的就是无需说明就可以在脚本的全部作用域中使用

超级全局变量列表 

     $GLOBALS
    $_SERVER
    $_REQUEST
    $_POST
    $_GET
    $_FILES
    $_ENV
    $_COOKIE
    $_SESSION

部分超级全局变量

$GLOBALS
    $GLOBALS 是PHP的一个超级全局变量组,在一个PHP脚本的全部作用域中都可以访问。
    $GLOBALS 是一个包含了全部变量的全局组合数组。变量的名字就是数组的键。
PHP $_SERVER
    $_SERVER 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。这个数组中的项目由 Web 服务器创建。不能保证每个服务器都提供全部项目;服务器可能会忽略一些,或者提供一些没有在这里列举出来的项目。
PHP $_REQUEST
    PHP $_REQUEST 用于收集HTML表单提交的数据。POST和GET方法提交都可以收集

PHP $_POST
    PHP $_POST 被广泛应用于收集表单数据,在HTML form标签的指定该属性:"method="post"。

PHP $_GET
    PHP $_GET 同样被广泛应用于收集表单数据,在HTML form标签的指定该属性:"method="get"。

php_Cookie

Cookie 是什么?
    cookie 常用于识别用户。cookie 是一种服务器留在用户计算机上的小文件。每当同一台计算机通过浏览器请求页面时,这台计算机将会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。
  
如何创建 Cookie?
    setcookie() 函数用于设置 cookie。
    **注释:setcookie() 函数必须位于 <html> 标签之前。
    ### 语法
    setcookie(name, value, expire, path, domain);
                        名字    值  存活时间
    在下面的例子中,我们将创建名为 "user" 的 cookie,并为它赋值 "php"。我们也规定了此 cookie 在一小时后过期:
    <?php
    setcookie("user", "php", time()+3600);
    ?>
    **注释:**在发送 cookie 时,cookie 的值会自动进行 URL 编码,在取回时进行自动解码。(为防止 URL 编码,请使用 setrawcookie() 取而代之。)

如何取回 Cookie 的值?
    PHP 的 $_COOKIE 变量用于取回 cookie 的值。

如何删除 Cookie?
    当删除 cookie 时,您应当使过期日期变更为过去的时间点。
    删除的实例:
    <?php
    // 设置 cookie 过期时间为过去 1 小时
    setcookie("user", "", time()-3600);
    ?>

php_Session 

PHP Session 变量
    您在计算机上操作某个应用程序时,您打开它,做些更改,然后关闭它。这很像一次对话(Session)。计算机知道您是谁。它清楚您在何时打开和关闭应用程序。然而,在因特网上问题出现了:由于 HTTP 地址无法保持状态,Web 服务器并不知道您是谁以及您做了什么。
    PHP session 解决了这个问题,它通过在服务器上存储用户信息以便随后使用(比如用户名称、购买商品等)。然而,会话信息是临时的,在用户离开网站后将被删除。如果您需要永久存储信息,可以把数据存储在数据库中。
    Session 的工作机制是:为每个访客创建一个唯一的 id (UID),并基于这个 UID 来存储变量。UID 存储在 cookie 中,或者通过 URL 进行传导。

开始 PHP Session
    **注释:**session_start() 函数必须位于 <html> 标签之前:
    <?php session_start(); ?>
    <html>
    <body>
    </body>
    </html>

php_Mysql连接 

PHP连接 MySQL
在我们访问 MySQL 数据库前,我们需要先连接到数据库服务器:
两种连接方式:
    1.实例 (MySQLi - 面向对象)
        <?php
        $servername = "localhost";
        $username = "username";
        $password = "password";
        // 创建连接
        $conn = 
        new mysqli($servername, $username, $password);
        // 检测连接
        if ($conn->connect_error) {
            die("连接失败: " . $conn->connect_error);
        }else echo "连接成功";
        ?>
    2.实例 (MySQLi - 面向过程)
        <?php
        $servername = "localhost";
        $username = "username";
        $password = "password";
        // 创建连接
        $conn = mysqli_connect($servername, 
        $username, $password);
        // 检测连接
        if (!$conn) {
            die("Connection 
        failed: " . mysqli_connect_error());
        }else echo "连接成功";
        ? 

猜你喜欢

转载自blog.csdn.net/qq_58793845/article/details/124761774