首页 > 技术文章 > php单引号和双引号的区别

longxinyv 2019-10-13 10:57 原文

<?php
/////////读取*
//readfile('a.txt');//直接把内容打印到浏览器中去

//var_dump(file('a.txt'));//返回一个数据类型和内容的数组

//$str = file_get_contents('a.txt');//得到内容
//var_dump($str);//打印内容

//语法:file_put_contents('TXT文本', '写入的内容');
//file_put_contents('a.txt', '这是我重新新写入的内容');//每次写入都会覆盖原来的内容,如果没有文件会自动创建文件

?>

<?
    //语法:fopen('文本','模式')//打开文件  文件必须存在才能打开
    /////////*没有文件就报错
    //$fp = fopen('a.txt', 'r');//以读的方式打开
    //$fp = fopen('a.txt', 'r+');//以读可写的方式打开
    
    /////////*没有文件就自动创建
    //$fp = fopen('a.txt', 'w');//以读的方式打开
    //$fp = fopen('a.txt', 'w+');//以读可写的方式打开,每次从开头写入,也是覆盖原有内容
    
    /////////*没有文件也会自动创建
    //$fp = fopen('a.txt', 'a');//不可读,可写,会累加去写内容
    $fp = fopen('a.txt', 'a+');//可读,可写,会累加去写内容 ,不会覆盖内容
    
    //字符串里如果用单引号引用  那么\r\n 也会被当做字符串输出来 达不到换行效果
    $str="字符串必须使用双引号,才能识别更多特殊字符的转义\r\n";
    
    fwrite($fp, $str); //写入内容
    fseek($fp, 0); //把(鼠标)指针移到最前面
    echo fread($fp,3);//读取三个字符
    
    fclose($fp);
    
?>

<?
    //var_dump(pathinfo('a.txt'));//获取数组
    
    //var_dump(basename('a.txt'));//获取文件名
    
    //var_dump(dirname('a.txt'));//获取文件夹名字
    
    //$arr = ['username'=>'zhangsan','pass'=>'123'];
    //var_dump(http_build_query($arr));//变成URL那种感觉 ,比如www.xx.com?  .........这里是获得的内容
    
    
    //var_dump(parse_url('https://www.baidu.com/baidu?wd=%E7%99%BE%E5%BA%A6%E9%97%AE%E9%A2%98&tn=monline_4_dg&ie=utf-8'));
    
    //parse_str('username=zhangsan&pass=123');//将字符串解析成多个变量
    //echo $username,$pass;//有赋值的感觉 ,把zhangsan赋值给第一个参数,123赋值给第二个参数
    
    
    //file_exists($retVal = (condition) ? a : b ;//判断文件是否存在   ,三目运算符
    
    //file_exists();//判断文件是否存在 
    //is_file();//判断是否是个文件
    //is_dir();//判断是否是个文件夹
    //is_writable();//判断是否可写
    //is_readable();//判断是否可读
    //is_executable();//判断是否可执行
    //chmod($filename, $mode);//改变权限 (最大权限:0777    模式:r w x)
    
?>

输出结果:是起到了一个换行效果的

所以:php里单引号和双引号的区别在于

‘单引号里面所以内容都会被编译器定义为字符串来显示’

“双引号里面内容也是字符串,但是编译器能够识别里面的特殊转义字符,进行代码编译”

以上我对单双引号的理解,特殊字符只是拿\r\n 【回车,换行】为例,其他可以自行尝试

另外:由于双引号的内容会被解释,所以双引号的效率会比单引号的效率低,所以,我们可以在PHP代码中尽量使用单引号,若包含变量需要进行解析时,在去使用双引号

推荐阅读