2020-12-30

在这里插入代码片
    8.文件函数:
        fileowner();返回文件拥有者用户id,只能在linux上运行
        filesize('phpindex.php');返回文件大小,单位b
        filetype('phpindex.php');返回是否是文件 是返回file or dir
        file_exists('phpindex.php');根据目录(中文目录查不到),判断文件是否存在,存在显示1,不存在不显示
        is_file('phpindex.php');判断是否是文件,显示1,不是不显示
        is_dir('phpindex.php');判断是否是目录,显示1,不是不显示

        is_readable('phpindex.php');判断可读,可以显示1,不可以不显示
        is_writable('phpindex.php');判断可写,可以显示1,不可以不显示
        is_writeable('phpindex.php');判断可读写,可以显示1,不可以不显示

        is_executable('phpin1dex.php');判断可执行,可以显示1,不可以不显示;windows中.exe才判断可执行

        basename($df); 获取文件名
        dirname($df);   获取目录

        mkdir('233333');创建目录
        rmdir('233');删除目录

        文件的读:
            $变量=fopen(路径,模式);
                r—》只读(不能写入),r+=》读写打开文件 (指针在开头)
                a-》写入方式(不能读取,如果文件不存在则尝试创建之),a+->读写方式打开 (指针在结尾)
                w/w+ 类似 但是打开前删除原来的数组,所以用的少,

            fread(文件,读取字节数);读取文件信息
            fgets(文件);一行一行输出
            feof(变量) 检查指针是否到结尾
            fclose()关闭打开的文件

            $file=file('qwe.txt');获取文件信息变为数组,每行一个索引;
            var_dump($file);

            fseek($a(这个读出来数据),0);//移动光标位置到最开始

            $a=fopen('qwe.txt','r+');
            while (1){
                    echo fgets($a).'<br>';
                if (feof($a)){
                    break;
                }
            }

        文件的写:
            fwrite(文件,写入信息) 在文件(可以是绝对目录或者相对目录)中写入信息(写入的信息可以是存有字符串的变量);
                $c=fopen('D:/xampp/apache/logs/error.log','r+');
                $a=fread($c,filesize('D:/xampp/apache/logs/error.log'));
                //$b=fopen('./newerror.txt','a+');
                //fwrite($b,$a);
                var_dump($a);
                //fseek($a,0);//移动光标位置到最开始
                //echo fread($a,1024);
                //fwrite($a,"\n4561");
                //fclose($a);
        指定位置插入
            $f=fopen("qwe.txt","r+");--》只能r+,a+默认最后,不能指定位置插入
            fseek($f,3);---》在第三个位置后插入
            fwrite($f,"while");
            fclose($f);


    如果想在文档内容中间某个位置插入数据,不能使用a+,
    append模式在写的时候默认将输入光标移动到文尾。只能使用r+

        9.自定义函数:
        function 函数名(形式参数){
                函数体;
                return}
        函数名(实际参数);  函数名不区分大小写,包括系统自定义函数;不加$

            function asd($a,$b){
                print_r(func_get_args());--->把传进来的所有参数,包括多余的,形成一个数组;
            }

            //默认参数
            function asd($a=1,$b=2){
                return $a+$b;
            }
                echo asd();
                echo '<br>';
                echo asd(11);
                echo '<br>';
                echo asd(11,11);
                echo '<br>';
                echo asd(11,11,22);

            //值传递,和地址传递
            function qwe(&$s){
                $s+=1;
                return $s;
            }
            $a=11;
            echo qwe($a);
            echo $a;--->a会随着s的值而变,应为$a=&$s

                可变变量
                //$a='c';
                //$$a='qwe';
                //echo $c;

                //可变函数,与可变变量类似,变量值和函数名相同,可以通过变量()来调用函数
                function asd(){
                    echo 111;
                }
                $a='asd';---》变量值和函数名相同,
                $a();---》可以通过变量()来调用函数
        10.作用域:
            变量的使用范围;分为全局和局部,
            局部变量:定义在函数内的变量,外面不能使用,使用会报错;
                    想要外面使用,可以return xx;
            全局变量:定义在函数外面的变量;在函数内部不能使用;
                    想要在内部使用,要在函数内事先申明:global 全局变量;引用后可以对其进行改变全局;

                        $ss=111;
                        $a=12;
                        function asd(){
                            global $ss,$a;-->想要在内部使用,要在函数内事先申明
                            $s=$ss+$a;
                            return $s;
                        }
                        //$s1=asd();
                        //echo $s1;
                        echo asd();
            静态变量:只会被定义一次,不会被重置,类似全局变量
                    function add(){
                        static $a=1;
                        $a+=1;
                        echo $a;
                    }
                    add();---》第一次生成静态变量$a,输出2
                    add();--->不会重置第一次的静态变量$a,会继续使用,输出3
            超全局变量
                $GLOBALS-->个包含了全部变量的全局组合数组。变量的名字就是数组的键
                $_POST --->接受post请求的数据,是个数组(关联数组键值对,键是input标签里的name值,值是出入的值)
                $_GET  --->接受get请求的数据,是个数组(关联数组键值对,键是input标签里的name值,值是出入的值)
                $_REQUEST --->接受get请求或者post的数据,是个数组(关联数组键值对,键是input标签里的name值,值是出入的值)

            例子登录验证:

                //var_dump($_GET);
                //var_dump($_POST);
                //$user=$_POST['username'];
                //$passwd=$_POST['password'];
                $user=$_REQUEST['username'];
                $passwd=$_REQUEST['password'];
                var_dump($_REQUEST);
                //var_dump($_POST);
                if ($user=='admin' && $passwd=='admin'){
                echo '登录成功';
                }else{
                echo '密码错误';
                }
            前端页面:
            <!DOCTYPE html>
            <html lang="en">
            <head>
                <meta charset="UTF-8">
                <title>Title</title>
            </head>
            <body>
            <form action="http://localhost:63342/htdocs/text.php" method="get">
                <input type="text" name="username" ><br>
                <input type="password" name="password" ><br>
                <input type="submit" value="登录">
            </form>

            </body>
            </html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值