【day09】PHP

一.函数

  1. 作用域(Scope)

    (1)局部变量:变量在声明的代码段中有效

         a.动态变量

         b.静态变量:static ,用在函数中,当调用函数后内存不释放,能存储变量的最后的值。

    (2)全局变量:变量在任意范围中都有效,但必须在函数中声明全局变量

         global

         $GLOBALS

    (3)超全局变量:变量在任意范围中都有效,并且不用声明变量

       说明:所有的预定义变量都是超全局变量

   2.预定义变量

     $_POST:接受表单中传输方式'post'信息,名/值

     $_GET:接受表单中传输方式'get'信息,名/值

     $GLOBALS:全局变量

     $_FILES:接受表单中上传的信息

     $_REQUEST:等同于 $_POST,$_GET,$_COOKIE的接受

     $_COOKIE:会话机制,跨页面传输信息

     $_SESSION:会话机制,跨页面传输信息

     $_SERVER:获得服务器信息

     $_ENV:环境变量

       说明:

       a.预定义变量都是以数组形式存储的

               例如:获得表单信息中 某一个值:$_POST['user']

            print_r($_POST);查看表单元素所有信息

二.常量

    1.什么是常量  :程序中不可以改变的量 常量一旦定义不能重复定义

    2常量分类

       (1)自定义常量

          a.声明常量

            (a) define('常量名称','值');

            (b) const 常量名称='值';(面向对象中定义)

          b.输出常量

            (a) echo 常量名称;

            (b) constant('常量名称');

          c.常量名称规范

            (a) 没有 $

            (b) 常量名称尽量大写

            (c) 常量都是标量类型

            (d) 常量是超全局变量,除了const定义外

       (2)系统常量:

            a.PHP_INT_MAX 获得整型最大值

            b.PHP_VERSION php版本

            c.PHP_OS 操作系统

       (3)魔术常量:

           __LINE__:获得当前代码的行号

           __FILE__:获得当前文件的绝对路径

           __DIR__:获得当前文件的目录绝对路径

           __FUNCTION__:获得函数名称

           __CLASS__:获得类名称

           __METHOD__:获得方法名称

           __NAMESPACE__:获得命名空间的名称

 三.上传

  1.表单中具备浏览框的条件

     (1) method 必须是 post传输

     (2) form标记中添加 enctype="multipart/form-data"

  2. 接受上传的信息($_FILES 数组)

     (1) $_FILES['浏览框名称']['name']

                  上传的文件名称

     (2) $_FILES['浏览框名称']['type']

                  上传的文件类型

     (3) $_FILES['浏览框名称']['tmp_name']

                  上传的文件在服务器的临时目录及文件名称

     (4) $_FILES['浏览框名称']['error']

                  上传的文件报错, 0代表成功

     (5) $_FILES['浏览框名称']['size']

                  上传的文件大小,单位 字节(Byte)

         1024B = 1KB

         1024KB = 1MB

         1024MB = 1GB

   3.文件报错

     (1)UPLOAD_ERR_OK 其值为 0,没有错误发生,文件上传成功。

     (2)UPLOAD_ERR_INI_SIZE 其值为 1,上传的文件超过了 php.ini 中 upload_max_filesize=2M 选项限制的值。

     (3)UPLOAD_ERR_FORM_SIZE 其值为 2,上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。

     (4)UPLOAD_ERR_PARTIAL 其值为 3,文件只有部分被上传。

     (5)UPLOAD_ERR_NO_FILE 其值为 4,没有文件被上传。

     (6)UPLOAD_ERR_NO_TMP_DIR 其值为 6,找不到临时文件夹。PHP 4.3.10 和 PHP 5.0.3 引进。

       php.ini 中参数upload_tmp_dir ='临时目录'

     (7)UPLOAD_ERR_CANT_WRITE 其值为 7,文件写入失败。PHP 5.1.0 引进。

   4. 将临时目录和文件上传到目标位置上

      move_uploaed_file($tmpname,'文件夹'+$filename);

   5. 包含文件函数

     include:当文件加载失败时,报警告(Warning)错误并且后面代码继续执行

     require:当文件加载失败时,报致命(Fatal)错误并且后面代码停止执行

     include_once:当页面重复加载时,只加载一次

     require_once:当页面重复加载时,只加载一次

     

   6.多文件上传

      (1) 表单元素名称以数组形式命名,

                     得三维数组信息,所以将三维数组转为

                     索引+关联的二维数组

      (2) 表单元素名称单独命名,得关联+关联的

                     二维数组,所以关联+关联转为索引+关联

                     的二维数组,与单文件上传的区别是有多个

                     成员值

   7. 上传步骤

     (1)表单元素中浏览框具备的条件

     (2)将上传接受的信息都转为 索引+关联的二维数组

     (3)单文件或多文件上传

        (a) 获得新的 索引+关联的二维数组(循环每个文件上传)

        (b) 判断 上传报错 0 成功

        (c) 避免上传文件冲突给文件重命名

        (d) 临时目录和文件名称移动到目标位置上

     (4) 要求

        ...     

// =================================

  Linux  目的:给www 文件夹权限

       打开终端

     a. su root (进入root用户)

     b. 密码: php123456

     c. cd  / (根目录下)

     d. cd home (进入 home 文件夹)

     e. ll 查看 home 文件的目录资源 www

     f. chmod -R 777 www

     f. ll 

 

 
原文地址:https://www.cnblogs.com/tommymarc/p/11627322.html