【发布时间】:2019-10-18 12:15:48
【问题描述】:
这是我之前提出的问题的后续问题:
我试图在一个家谱程序中替换一个人的已婚头衔。 喜欢:“用女性版本替换最后姓氏字符串中的标题”。 标题是 $mpref。在 csv 中是男性头衔(查找)和女性头衔(替换):
$mpref = trim($mpref);
$file = fopen("mods/m_replace.csv","r");
while (($csv = fgetcsv($file)) !== false) {
$search = array();
$replace= array();
$search = $csv[0];
$replace = $csv[1];
}
fclose($file);
$blub = str_replace($search, $replace, $mpref);
$lastname = "{$blub} {$mName} ({$text['nee']} {$lastname})";
它工作......部分。但是,我仍然有一个问题: 仅当 original_title 和 replacement_title 在 csv 中位于 [0] 和 [1] 时才会替换标题 - 如果该对是 [2] 和 [3] 或 [4] 和 [5] 则不会......尽管通过 "而”
e.g. from csv:
Herzog, Herzogin
Freiherr, Freiherrin
Graf, Gräfin
...导致类似“Marie Louise Freiherr von Hardtenstein (nee Becker)”而不是“Marie Louise Freiherrin von Hardtenstein (nee Becker)”...
【问题讨论】:
-
我们怎么知道您之前发布的内容??
标签: php arrays csv replace while-loop