在php当中,发现好像区别不大
只是两个单引号or双引号不能嵌套使用(在没有\的时候)
而$str = ' "" ';
或者$str = " '' ";
那里面的引号属于字符串不知道高人们有什么指正

解决方案 »

  1.   

    $str = "abcd";
    echo "$str";
    echo '$str';执行一下看看
      

  2.   

    1)引号成对出现,不可以同对嵌套,如下是不可以的:""""或''''
    2)双引号中可以放变量,如:"$str";而单引号不行,如:'$str',将会输出$str,因为php认为单引号之内的是一个字符串,而非一个变量。
    3)据说单引号比双引号要快,没有测试过;
    4)单引号在sql语句中不可省,如:"insert into shop (shopname,shopaddress) values ('$shopname','$shopaddress')";如果没有引号将会失败,另外里面的数据中如果含有单引号,都一定要转义,即用addslashes()函数来处理,否则会出现配对错误。
    5)当出现非要两种引号都要使用的情况,可以这样处理,如:"'".$str."'";结果会输出带单引号的变量。
    6)其他情况,还没想到。
      

  3.   

    单引号
    指定一个简单字符串的最简单的方法是用单引号(字符 ')括起来。 要表示一个单引号,需要用反斜线(\)转义,和很多其它语言一样。如果在单引号之前或字符串结尾需要出现一个反斜线,需要用两个反斜线表示。注意如果你试图转义任何其它字符,反斜线本身也会被显示出来!所以通常不需要转义反斜线本身。 注: 在 PHP 3 中,此情况下将发出一个 E_NOTICE 级的警告。 注: 和其他两种语法不同,单引号字符串中出现的变量和转义序列不会被变量的值替代。 
    <?php
    echo 'this is a simple string';echo 'You can also have embedded newlines in
    strings this way as it is
    okay to do';// Outputs: Arnold once said: "I'll be back"
    echo 'Arnold once said: "I\'ll be back"';// Outputs: You deleted C:\*.*?
    echo 'You deleted C:\\*.*?';// Outputs: You deleted C:\*.*?
    echo 'You deleted C:\*.*?';// Outputs: This will not expand: \n a newline
    echo 'This will not expand: \n a newline';// Outputs: Variables do not $expand $either
    echo 'Variables do not $expand $either';
    ?>
     
    --------------------------------------------------------------------------------双引号
    如果用双引号(")括起字符串,PHP 懂得更多特殊字符的转义序列: 表格 7-1. 转义字符序列 含义 
    \n 换行(LF 或 ASCII 字符 0x0A(10)) 
    \r 回车(CR 或 ASCII 字符 0x0D(13)) 
    \t 水平制表符(HT 或 ASCII 字符 0x09(9)) 
    \\ 反斜线 
    \$ 美元符号 
    \" 双引号 
    \[0-7]{1,3} 此正则表达式序列匹配一个用八进制符号表示的字符  
    \x[0-9A-Fa-f]{1,2} 此正则表达式序列匹配一个用十六进制符号表示的字符  此外,如果试图转义任何其它字符,反斜线本身也会被显示出来! 双引号字符串最重要的一点是其中的变量名会被变量值替代。细节参见字符串解析。 
      

  4.   

    ' '中不对\$ \"进行转义    " "中不对\'进行转义
    <?
    $a=qq;
    echo '$a';
    echo "$a";
    echo '""';
    echo "''";
    echo '\'\"';
    echo "\'\"";
    ?>
      

  5.   

    输出变量我一般用点连接符号的
    例如
    $a = "abc";
    echo "ccc".$a."ccc";
    这样子在ultraedit里面容易看到这个变量
    此外,我一般不喜欢用 \" 的写法
    通常人家这样写的
    echo "<a href=\"www.abc.com\">asdf</a>";
    但是我习惯echo "<a href='www.abc.com'>asdf</a>";
    或者干脆echo "<a href=www.abc.com>asdf</a>";