Я сделаю все возможное, чтобы объяснить это, и извиниться, если это уже там ...
Я пытаюсь заменить определенные строки в абзаце в определенной последовательности.
Абзац:
$Paragraph = "This bit of Water has an Apple, a pseudo Apple; some Rubber and a Big Rubber too.";
У меня есть массив строк:
$SortableArray = array(
"Apple"=>"Green Apple",
"Big Rubber"=>,"Big Gasket"
"Rubber"=>"Gasket",
"pseudo Apple"=>"Banana",
"Water"=>"Blue Water"
);
Итак, я тогда krsort
, который я должен отсортировать по ключу в обратном порядке, чтобы попытаться поймать pseudo Apple
:
$SortableArray = array(
"Water"=>"Blue Water",
"pseudo Apple"=>"Banana",
"Rubber"=>"Gasket",
"Big Rubber"=>,"Big Gasket"
"Apple"=>"Green Apple"
);
Но это вызывает ошибку со строкой Rubber/Big Rubber
.
В этом кусочке Голубой воды есть Зеленое яблоко, Банан; какой-то сингл
Прокладка и большая одиночная прокладка тоже.
Я немного застрял, когда мне нужно убедиться, что Big Rubber
предшествует Rubber
при восстановлении массива, чтобы получить следующий результат:
$Paragraph = "This bit of Water has an Apple, a pseudo Apple; some Rubber and a Big Rubber too.";
$SortableArray = array(
"Water"=>"Blue Water",
"pseudo Apple"=>"Banana",
"Big Rubber"=>"Big Gasket",
"Rubber"=>"Single Gasket",
"Apple"=>"Green Apple"
);
foreach ($SortableArray as $Find=>$Replace){
$Paragraph = str_replace($Find, $Replace, $Paragraph);
}
echo $Paragraph;
В этом кусочке Голубой воды есть Зеленое яблоко, Банан; какой-то сингл
Прокладка и большая прокладка тоже.
Заранее спасибо