PHP学习笔记(六)

2023-10-04 289 0

1.PHP三元运算符

语法:条件 ?结果1 :结果2

对 条件 求值为 true 时的值为 结果1,在 条件 求值为 false 时的值为 结果2。

<?php 
    //三元运算符
    $score = 60;
    if($score >= 60) {
        echo "考试通过!";
    }else {
        echo "考试未通过!";
    }

    //语法: 条件 ?结果1 :结果2
    $result = $score >= 60 ? "考试通过" : "考试未通过";
    echo $result;

    //或
    echo $score >= 60 ? "考试通过" : "考试未通过";

?>

2. PHP超全局变量

$_SERVER : 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。这个数组中的项目由 Web 服务器创建。

<?php 


    // SERVER_NAME 主机名
    echo $_SERVER['SERVER_NAME'] . '<br>';
    // REQUEST_METHOD 请求方法
    echo $_SERVER['REQUEST_METHOD'] . '<br>';
    // SCRIPT_FILENAME 当前执行脚本的绝对路径
    echo $_SERVER['SCRIPT_FILENAME'] . '<br>';
    // PHP_SELF 当前脚本文件名
    echo $_SERVER['PHP_SELF'] . '<br>';

?>

3. PHP Session 会话

PHP session 变量用于存储关于用户会话(session)的信息,或者更改用户会话(session)的设置。Session 变量存储单一用户的信息,并且对于应用程序中的所有页面都是可用的。

1)开启/创建会话:session_start() 

注释:session_start() 函数必须位于 <html> 标签之前

2)存储 session 信息

超全局变量 $_SESSION 存储:$_SESSION['name']="张三";

3)清空 session 信息

A. unset($_SESSION['name']) 删除指定session变量值

B. session_unset() 删除所有session变量值

C.session_destroy() 销毁所有的session变量,并且结束session会话

<?php 

    // Session会话
    if(isset($_POST['submit'])) {
        //开启/创建会话
        session_start();

        //超全局变量 $_SESSION 存储
        $_SESSION['name'] = $_POST['name'];

    }

?>
<?php 
    session_start();
    $_SESSION['name'] = "SUMMER";

    if($_SERVER['QUERY_STRING'] == 'noname') {
        // unset($_SESSION['name']); //取消单个内容
        session_unset(); //取消所有内容
    }
    $name = $_SESSION['name'];

?>

4. PHP空合并运算符(PHP7)

空合并运算符: ??

如果变量是存在的并且不为null,则空合并运算符将返回其第一个操作数,否则返回其第二个操作数。

<?php 
    session_start();
    // $_SESSION['name'] = "SUMMER";

    if($_SERVER['QUERY_STRING'] == 'noname') {
        unset($_SESSION['name']); //取消单个内容
        // session_unset(); //取消所有内容
    }
    //空合并运算符 ??
    $name = $_SESSION['name'] ?? '游客';

?>

5. PHP Cookie

cookie 常用于识别用户。cookie 是一种服务器留在用户计算机上的小文件。

1)创建cookie

setcookie() 函数用于设置 cookie。

语法:setcookie(name, value, expire, path, domain);

// 存储数据到cookie
setcookie('gender',$_POST['gender'],time()+86400);

2)获取cookie 值

PHP 的 $_COOKIE 超全局变量用于取回 cookie 的值。

//获取cookie
$gender = $_COOKIE['gender'] ?? '未知';

3)删除 cookie

当删除 cookie 时,应当使过期日期变更为过去的时间点。

// 设置 cookie 过期时间为过去 1 小时
setcookie("gender", "", time()-3600);

6. PHP文件系统(Filesystem 函数)

Filesystem 函数允许您访问和操作文件系统。常用文件系统函数:

函数描述
file_exists()检查文件或目录是否存在。
readfile()读取一个文件,并写入到输出缓冲。
realpath()返回绝对路径名。
filesize()返回文件大小。
rename()重命名文件或目录。
copy()复制文件。
mkdir()创建目录。

当在 Unix 平台上规定路径时,正斜杠 (/) 用作目录分隔符。而在 Windows 平台上,正斜杠 (/) 和反斜杠 (\) 均可使用。

<?php 
    //文件系统

    $file = 'test.txt';
    //判断文件是否存在
    if(file_exists($file)) {
        //读取文件
        echo readfile($file) . '<br>';
        //绝对路径
        echo realpath($file) . '<br>';
        //获取文件大小
        echo filesize($file) . '<br>';
        //重命名
        rename($file, 'test.txt');
        //文件复制
        copy($file, 'file.txt');

    }else {
        echo '文件不存在!';
    }

    //创建目录
    mkdir('php');
?>

7. PHP文件

1)打开文件

fopen() 函数用于在 PHP 中打开文件。第一个参数含有要打开的文件的名称,第二个参数规定了使用哪种模式来打开文件。

//文件系统
$file = 'test.txt';
//打开文件进行读取
$handle = fopen($file, 'r');

文件模式:

模式描述
r只读。在文件的开头开始。
r+读/写。在文件的开头开始。
w只写。打开并清空文件的内容;如果文件不存在,则创建新文件。
w+读/写。打开并清空文件的内容;如果文件不存在,则创建新文件。
a追加。打开并向文件末尾进行写操作,如果文件不存在,则创建新文件。
a+读/追加。通过向文件末尾写内容,来保持文件内容。
x只写。创建新文件。如果文件已存在,则返回 FALSE 和一个错误。
x+读/写。创建新文件。如果文件已存在,则返回 FALSE 和一个错误。

2)关闭文件

fclose() 函数用于关闭打开的文件。

//文件系统
$file = 'test.txt';
//打开文件进行读取
$handle = fopen($file, 'r');
//关闭
// fclose($handle);

3)读取文件

php文件函数:

函数描述
fread()读取打开的文件。
fgets()从打开的文件中返回一行。
fgetc()从打开的文件中返回字符。
fwrite()写入打开的文件。
unlink()删除文件
//文件系统
$file = 'test.txt';

//打开文件进行读取
$handle = fopen($file, 'r');
//读取文件
echo fread($handle,filesize($file));

//读取单行内容(逐行读取)在调用函数后,文件指针会移到下一行
echo fgets($handle);
//读取单个字符(逐字符读取)在调用函数后,文件指针会移到下一个字符
echo fgetc($handle);
echo fgetc($handle);
echo fgetc($handle);

//文件读/写
// $handle = fopen($file, 'r+'); //文件开头
$handle = fopen($file, 'a+'); //文件末尾进行写入操作
//写入文件
fwrite($handle, "\nHello World");
//文件删除
unlink($file);

相关文章

Laravel框架-环境配置
PHP面向对象
PHP学习笔记(五)
PHP学习笔记(四)
PHP学习笔记(三)
php学习笔记(二)

发布评论