Symfony2 Yaml Dumper单引号转义


Symfony2 Yaml Dumper single quote escaping

我有一些csv翻译,它们被Symfony''Component''YamlDumper转换并写入messages.fr.yml,在d‘achat这样的字符串上,它变成了'd‘achat’

我做了一些调试,发现字符串被识别为需要转义的字符串:

preg_match('/[ 's '' " ': '{ '} '[ '] , & '* '# '?] | 'A[ '- ? | < > = ! % @ ` ]/x', $value)

然后用以下代码逃脱:

return sprintf("'%s'", str_replace('''', '''''', $value));

在调试之前,我已经尝试过使用函数addslashes,但无法识别这种转义。

所以我想知道Symfony社区的意见:这是一个bug还是一个功能?我应该报告并修复它,还是只检查我的输入并用撇号(')替换单引号(')?

在YAML中,双引号(''-2个单引号)是转义单引号的方式。

这不是一个bug&双引号由YAML解析器自动转换为单引号。