@Speakea1y1289

Как заменить выражения > N, либо < N, где N-число, на точные числа средствами PHP?

Добрый день. Имеется переменные со следующими значениями:
$str1 = ">N";
$str2 = "<N";

Вопрос: как заменить $str1 на N, если число N не известно, а $str2 на число N/2 (с округление до целого, если не делится нацело)?
Например, есть выражение >100, тогда мы выводим 100. А если выражение имеет вид <10, то выводим число 5, если <5, то выводим 2 и так далее. Как это сделать?
  • Вопрос задан
  • 82 просмотра
Решения вопроса 1
@VicTHOR
(╮°-°)╮┳━━┳ ( ╯°□°)╯ ┻━━┻
if (preg_match('/>/', $str)) {
    $result = preg_replace('/>/', '', $str);
} elseif (preg_match('/</', $str)) {
    $result = floor((preg_replace('/</', '', $str))/2);
} else $result = $str;
echo $result;

работает
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
erniesto77
@erniesto77
oop, mvc, rb, py, php, js
я думаю тут сначала нужно реализовать логику, например создать модель Condition и таблицу conditions, где будут поля title, code, например ['title' => 'Больше', 'code' => '>'] , реализовать класс Number где реализовать метод satisfiesCondition
$number1 = new Number(57);
$number2 = new Number(120);
$condition = Condition::byCode('>');

$number1->satisfiesCondition(Condition $condition, Number $number2); // false
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 июл. 2019, в 08:49
35000 руб./за проект
19 июл. 2019, в 07:57
65000 руб./за проект
19 июл. 2019, в 06:36
15000 руб./за проект