【发布时间】:2016-07-14 23:11:28
【问题描述】:
所以几个小时以来我一直在努力解决这个问题, 但似乎没有按预期工作。
for($i = 0 ; $i < count($lines); $i++){
$currentLine = $lines[$i];
$search = array('ø', '', 'ï', 'ò');$replace = array('ř', 'ť', 'ď', 'ň');
$subject = str_replace($search, $replace, $currentLine);
$finalLine = '"'.$subject.'",';
file_put_contents($fileName, $finalLine, FILE_APPEND);
};
事情很简单,我正在遍历 .dic 文件中的行(它只是单词列表,一行一个单词), 对于每个单词,我都会替换一些错误的字符,最后我会尝试将单词用双引号括起来(单引号也不起作用)。
问题是,引号没有正确添加,而不是"someword", 我得到","someword
// $currentLine = someword;
echo '"'.$currentLine.'",';
// returns
","someword
我需要这个将 .dic 文件转换为 json,这样我就可以在我正在制作的 javascript 游戏中使用它。
有人可以帮忙吗?我找不到任何类似的问题,不是在这里,不是在谷歌上,什么都没有。我尝试了单引号,我尝试使整个事物成为数组
$newline = Array(
0 => '"',
1 => $currentLine,
2 => '",'
)
然后加入数组但结果相同,我现在有点绝望,所以如果有人知道我做错了什么,请告诉我。
【问题讨论】:
-
这应该可以,你连接引号之间的行,所以输出也应该在引号之间
-
对于 json - 有
json_encode而不是轮子,你在这里发明。 -
这可能是您的意图,但您确实知道您要附加到`$finalLine`,然后在每次循环迭代后将
$finalLine附加到$fileName文件? -
@Chris 哦,我的错,我一定是因为另一次不成功的尝试而把它留在那里了。
-
您是否因为 .dlc 文件非常大而一次添加一行?