我有一段任意文本,通过 CMS 中的 magento 提供,
检索到的文本可能包含价格。所以例如
交付文本
超过 200 欧元的订单免费送货。200 欧元以下的订单收取 10 欧元的费用。重货可能会收取额外费用。
我将如何替换每次出现的价格,所以在上述情况下我会改变
€200
€10
€200
我想根据当前使用的货币替换这些价格。
$fromCur = 'EUR'; // currency code to convert from
$toCur = 'USD'; // currency code to convert to
$toCurrencyPrice = Mage::helper('directory')->currencyConvert($fromCurrencyPrice, $fromCur, $toCur);
这就是我将如何转换价格,唯一的是,我不知道如何在文本中找到价格
这是我迄今为止尝试过的
//the text to search
$text = 'Orders over €200 are delivered Free Of Charge. €10 charge for orders under €200. There may be additional charges for heavy goods.';
$matches = array();
//find a price with a euro symbol
preg_match_all("/€[0-9]+/", $text, $matches);
$ints = array();
$counter = 0;
//remove the euro symbol
foreach ($matches[0] as $match) {
//echo substr( $match,6) . '<br/>';
$ints[$counter] = substr( $match,6);
$counter++;
}
//now i know i have to convert it to my price, but my issue is, how do i now replace new values, with the old values inside the $ text varaible
假设我想使用 $ints 中的元素(不带欧元符号的价格)更改找到的匹配项。我该怎么做?