我可以在PHP中替换没有查找字符串的字符串吗?

时间:2012-02-20 14:23:43

标签: php

我有这样的文本文件(test.txt)。

的test.txt

"HOME" => "НАЧАЛО",
"REWARDS" => "НАГРАДИ",
"LEADERBOARDS" => "КЛАСАЦИИ",
"LOGIN | SIGN UP" => "ВХОД / РЕГИСТРАЦИЯ",
"STORE" => "МАГАЗИН",
"LOGOUT" => "ИЗХОД",
"SET" => "ПОТВЪРДИ

现在我想从我的php flie(test.php)替换一些单词。

test.php的

$new_word = "НАГРАДИ123";
$en_word  = "REWARDS";

我正在使用文件处理来编写文件。我的问题是我可以使用$new_word在text.txt中将НАГРАДИ一词替换为$en_word

结果必须是这样的。

"HOME" => "НАЧАЛО",
"REWARDS" => "НАГРАДИ123",
"LEADERBOARDS" => "КЛАСАЦИИ",
"LOGIN | SIGN UP" => "ВХОД / РЕГИСТРАЦИЯ",
"STORE" => "МАГАЗИН",
"LOGOUT" => "ИЗХОД",
"SET" => "ПОТВЪРДИ

“奖励”=>的 “НАГРАДИ123”下,

这可能吗?请帮帮我。

2 个答案:

答案 0 :(得分:1)

如果我理解了您的问题,那么我认为您需要将非英语单词替换为英语单词,并且这样做可以使用

$original_words=array(
    "HOME" => "НАЧАЛО",
    "REWARDS" => "НАГРАДИ",
    "LEADERBOARDS" => "КЛАСАЦИИ",
    "LOGIN | SIGN UP" => "ВХОД / РЕГИСТРАЦИЯ",
    "STORE" => "МАГАЗИН",
    "LOGOUT" => "ИЗХОД",
    "SET" => "ПОТВЪРДИ"
);
$english_words=array(
    "HOME"=>"HOME",
    "REWARDS"=>"REWARDS",
    "LEADERBOARDS" => "LEADERBOARDS",
    "LOGIN | SIGN UP" => "LOGIN | SIGN UP",
    "STORE" => "STORE",
    "LOGOUT" => "LOGOUT",
    "SET" => "SET"
);
$new_words=str_ireplace($original_words, $english_words, $original_words);
print_r($new_words);

但要做到这一点,你需要将test.txt更改为test.php并将$ original_words数组保存在其中,并将其包括在内,如include('test.php');在str_ireplace调用之前。

答案 1 :(得分:0)

您需要str_replace(http://php.net/manual/en/function.str-replace.php

读取文件内容,执行替换,然后将所有内容写回文件(假设您要这样做)。