Вероятно, было бы лучше, если бы вы разбили хранилище ваших процентных данных на два разных поля, если это возможно. Но я думаю, это сделает то, что вы ищете. Я разделил его на две функции - "convertPercentageDataToDecimal" извлекает процент из ваших данных и преобразует его в десятичное число, а затем "convertPercentageDataToDecimal" просто умножает цену на процент.
<?php
$price = 10.25;
$percentageData = "1.1100 (1.00%)";
function multiplyPriceByPercentageData($price, $percentageData) {
$percent = convertPercentageDataToDecimal($percentageData);
return $price * $percent;
}
function convertPercentageDataToDecimal($percentageData) {
$start = strpos($percentageData, '(') + 1;
$length = strpos($percentageData, '%') - $start;
$percent = substr($percentageData, $start, $length);
return $percent / 100;
}
var_dump(convertPercentageDataToDecimal($percentageData));
var_dump(multiplyPriceByPercentageData($price, $percentageData));
// output:
// float(0.01)
// float(0.1025)