我可以在Array()中使用两个引号吗?

时间:2013-07-17 15:49:01

标签: php arrays translation

我将我的网站翻译成法语,我想知道这是否正确

$lang = array(

"tittle" => "C'est bien",
"desc" => "Bienvenue sur mon site",
);

如果我使用:

'tittle' => 'c'est bien',

我收到了错误。

4 个答案:

答案 0 :(得分:1)

没有什么可说的,你不能像方便的那样混合字符串分隔符

$lang = array(
    'tittle' => "C'est bien",
    'desc' => 'Bienvenue sur mon site',
);

就个人而言,我在大多数简单的字符串周围使用单引号,但在这种情况下使用双引号而不是使用双引号。对我而言,它似乎更具可读性。

答案 1 :(得分:0)

是的,只需使用一种引用类型来表示字符串文字的边界,使用另一种类型来表示内部文字值。将它们混合起来都不会起作用,因为字符串需要一个开头和一个结尾,否则无法确定(省略转义作为一种可能性,只会让代码更难以理解。)

答案 2 :(得分:0)

您需要使用“转义”... 'tittle' => 'c\'est bien'

PHP有一个功能:http://php.net/addslashes

答案 3 :(得分:0)

您可以在single quotes内使用doubles或在单引号内使用双打,但如果您尝试将单曲放入单打或双打内,您必须逃脱。例如,必须转义以下内容:

$str = 'c\'est bien';
$str = "John said, \"We should go.\"";

但是,您可以在不转义的情况下执行以下任一操作:

$str = "c'est bien";
$str = 'John said, "We should go."';

使用双引号的一个优点是您可以使用变量和各种转义字符:

$str = "Welcome $name, to our site!";//variable within string
$str = "Break this string for a new line.\n";//new line character
$str = "\tThis line begins with a tab";//tab character

使用单引号,转义字符被视为文字,变量必须连接在一起:

$str = 'Welcome '.$name.', to our site!';//variable concatenated in string
echo '\tNo tab here.';//prints out: \tNo tab here.