Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak
Разместите свой проект бесплатно и начните получать предложения от фрилансеров-исполнителей уже спустя минуты после публикации!

PHP подсчитать % и вывести результат

85 UAH

Отзыв заказчика о сотрудничестве с Иваном Филипповым

Качество
Профессионализм
Стоимость
Контактность
Сроки

Решил несколько задач на PHP минут за 10. Приятно работать 🙂

Отзыв фрилансера о сотрудничестве с Vladislavs Sipov

Оплата
Постановка задачи
Четкость требований
Контактность

Отличный заказчик, четко поставил задачи и своевременно оплатил, рекомендую к сотрудничеству

Заказчик не желает делать предоплату? Оплата через Сейф поможет избежать возможного мошенничества.
  1. 5599    394  9   3
    Победившая ставка1 день85 UAH

    Здравствуйте, сделаю сейчас же, обращайтесь в лс
    Здравствуйте, сделаю сейчас же, обращайтесь в лс

  2. 357    21  0
    1 день100 UAH

    Здравствуйте, готов взяться за выполнение задания.
    Email: [email protected]

  3. 599    75  0
    1 день200 UAH

    С удовольствием возьмусь за вашу задачу. Решим в течении вечера.

  4. 2748    153  0   1
    1 день200 UAH

    Здравствуйте. Готов сделать.

  5. Еще 5 ставок скрыто
  • Профиль удален
    23 октября 2017, 21:03 |

    <?php echo esc_attr( floor($product->get_price() * 0.95) ); ?>

    При условии что $product->get_price() возвращает целое число

  • Профиль удален
    23 октября 2017, 21:21 |

    Только поправлю согласно условиям

    <?php echo esc_attr( floor($product->get_price() * 0.95/10)*10 ); ?>

    Единственное - данная функция будет всегда выводить 0 в случае, если цена меньше 10... Если такое грозит, то через if/else обработать

  • Профиль удален
    23 октября 2017, 21:27 |

    Вы математику в школу проходили? Минус 5% это 95% от исходной цены. Чтобы получить 95% от исходного числа - надо произвести умножение на 0.95 , а вы мудрите что-то

  • Профиль удален
    23 октября 2017, 21:29 |

    Внимательно читаем условие. Округление до 10-ков вниз

  • Профиль удален
    23 октября 2017, 21:32 |

    Вы правы, прошу прощения, про десятки не увидел

  • Профиль удален
    23 октября 2017, 21:32 |

    Вы правы, прошу прощения, про десятки не увидел


  • Профиль удален
    23 октября 2017, 21:46 |

    для этого естьзамечательные функции:
    round

    ceil

    floor


    http://php.net/manual/ru/function.floor.php

  • Профиль удален
    23 октября 2017, 21:54 |

    floor и ceil в чистом виде не подходят т.к. не принимают аргументов, задающих точность. А в round нельзя задать направление округления

  • Профиль удален
    23 октября 2017, 21:29 |

    Откройте калькулятор и 2 умножте на 0.95, получите 1.9 , так что 0 будет только при цене равной 1.

  • Александр Щ.
    23 октября 2017, 21:42 |

    Добрый вечер.

    Откройте калькулятор и 2 умножте на 0.95, получите 1.9 , так что 0 будет только при цене равной 1.

    Все правильно Денис написал -
    1 юудет если округлить вниз до целых, а если до 10 - будет 0.

  • Вячеслав Р.
    23 октября 2017, 21:42 |

    С проверкой, если цена меньше 10 округляем до меньшего целого

    <?php echo esc_attr(($product->get_price()>10)?(floor(($product->get_price()*0.95)/10)*10):floor($c*0.95)); ?>

  • Вячеслав Р.
    23 октября 2017, 21:43 |

    Вместо $c написать $product->get_price()

  • Профиль удален
    23 октября 2017, 21:44 |

    тут возможно несколько вариантов... в зависимости от того, как клиент хочет обрабатывать подобные цены.

  • Профиль удален
    23 октября 2017, 21:56 |

    <?php echo esc_attr(($product->get_price() > 10)?floor($product->get_price()*0.95/10)*10:floor($product->get_price()*0.95));?>

    Одна пара скобок лишняя, а так 2 символа можно сэкономить

  • Вячеслав Р.
    23 октября 2017, 22:01 |

    А отступы до знака > и после как раз эти два символа занимают

  • Профиль удален
    23 октября 2017, 22:07 |

    Ну если уж так, то

    $discountPrice=$product->get_price()*0.95

    echo esc_attr(($discountPrice>10)?(floor($discountPrice/10)*10):floor($discountPrice)

    т.к. во первых это лучше читается, во вторых проблема была не при цене ниже 10, а при значении цены со скидкой ниже 10

  • Вячеслав Р.
    23 октября 2017, 22:06 |

    Ребята, зря мы старались...

  • Профиль удален
    23 октября 2017, 22:09 |

    Почему?

  • Профиль удален
    23 октября 2017, 22:09 |

    Так смысл не в этом:)

  • Профиль удален
    23 октября 2017, 22:11 |

    Лично я стараюсь из любопытства))

  • Vladislavs Sipov
    23 октября 2017, 22:19 |

    Я в шоке, господа! Благодарю вас за доброту и щедрость. К сожалению не увидел комментариев, а в лс уже постучались и предложили решение.

    Поздно заметил, если бы Алексей не стукнул в ЛС сейчас, то и совсем не увидел )

  • Александр Щ.
    23 октября 2017, 22:21 |

    А что Закзачику не приходят уведомления о сообщениях в проекте ? Мне приходят, если я просто написал комментирий или чекбокс нажал ...


  • Vladislavs Sipov
    23 октября 2017, 22:20 |

    Решение кстати подошло следующее:

    <?php echo esc_attr(floor($product->get_price()-$product->get_price()/100*5));  ?>
  • Профиль удален
    23 октября 2017, 22:22 |

    эммм... так нужно цену до 10-ков округлять или нет? т.к. в данном решении оно не округляется до 10-ков

  • Александр Щ.
    23 октября 2017, 22:23 |

    Но тут не до десятков округляется.
    Одно из лучших и в соотвествии - с ТЗ у Дениса.

  • Vladislavs Sipov
    23 октября 2017, 22:26 |

    Если 119.00 РУБ, то должно стать 113.00 РУБ, но проблема еще в том, что:
    <?php echo esc_attr( $product->get_price() ); ?>

    выводит только 119 РУБ и на выходе я получаю 113 РУБ, но дописываю с помощью HTML в конец .00 РУБ

    Всё из-за того что полную цену выводит:

    <?php woocommerce_template_single_price(); ?>

    А к такому выражению, которое подтягивает другой документ вычисления исполнитель не смог приминить, что наверное и невозможно.


  • Vladislavs Sipov
    23 октября 2017, 22:27 |

    Разве что создавать дополнительную функцию

  • Vladislavs Sipov
    23 октября 2017, 22:28 |

    Разве что создавать дополнительную функцию

  • Иван Филиппов
    23 октября 2017, 22:28 |

    применить можно толкьо надо перебрать функцию отдачи цены

  • Профиль удален
    23 октября 2017, 22:30 |

    Лучше доп.функцию. В таком случае обновления не заденут

  • Иван Филиппов
    23 октября 2017, 22:31 |

    да, о том же подумал, по этмоу решил что проще вывести формирование в шаблоне, без функции 

  • Александр Щ.
    23 октября 2017, 22:36 |

    Еще один моент:

    esc_attr() WP 2.8.0

    Преобразует знаки <, >, &, ", ' в html сущности. Не создает двойного преобразования.

    Функция предназначена для фильтрации строки, которую планируется выводить в значениях html атрибутов.

    В данном случае esc_attr() нафиг не нужна дя обработки результата floor ...


    Наверное надо закругляться - на такую пустяковую задачу 26 сообщений, да и проект закрыт ..

    Всем пока. Было весело.


Актуальные фриланс-проекты в категории Javascript и Typescript

Исправить CSS/DOM-верстку карточек в Chrome extension для локализации D&D Beyond

Это расширение Chrome Manifest V3, которое локализует сайт D&D Beyond на украинский язык. Проект написан на TypeScript + WXT. Расширение работает через контентный скрипт: находит английский текст на страницах D&D Beyond и заменяет его украинским переводом. Проблема возникла на…

HTML и CSS версткаJavascript и Typescript ∙ 1 день 7 часов назад ∙ 37 ставок

Разработка платформы AM Mobility (автосервис, парковка, страхование, аренда автомобилей)

259 176 UAH

Ищем команду или опытного Full Stack разработчика для создания MVP платформы AM Mobility. AM Mobility — это единая цифровая экосистема для автомобилистов, объединяющая в одном приложении и веб-платформе: парковку; автосервис; шиномонтаж; автомойку; аренду автомобилей;…

Javascript и TypescriptВеб-программирование ∙ 1 день 16 часов назад ∙ 98 ставок

Gsap анимации

1000 UAH

Добрый день. Нужно внести правки в текущем проекте. Нужен специалист, который хорошо работает на gsap/lenis Нужно сделать анимацию карточек. Подробное ТЗ здесь: https://www.figma.com/design/5bLEJudN5LPpB9ZSoJa2Eb/Untitled?m&#61;auto&amp;t&#61;qwyluUctL1lrMNvh-6 Нужно…

Javascript и TypescriptВеб-программирование ∙ 1 день 22 часа назад ∙ 21 ставка

Коммерческая on-premise платформа видеосвязи «ViM»

Требуется разработать on-premise систему видеосвязи с базовым расчетом на 100 одновременных подключений (10 изолированных комнат по 10 человек). Платформа должна иметь заложенную архитектуру для будущего горизонтального масштабирования до 1000 пользователей путем добавления…

Javascript и TypescriptВеб-программирование ∙ 2 дня 17 часов назад ∙ 32 ставки

Ищу наставника по Claude Code для запуска веб-проекта с нуля

**Кратко о задаче:** Я новичок без опыта в программировании. Есть готовое ТЗ на разработку сайта (42 страницы, Next.js, PostgreSQL). Хочу реализовать его самостоятельно с помощью Claude Code - нужен специалист, который настроит среду и научит меня работать с инструментом. ---…

Javascript и TypescriptОбучение ∙ 3 дня 21 час назад ∙ 18 ставок

Заказчик
Vladislavs Sipov
Латвия Рига  140  0
Проект опубликован
8 лет назад
212 просмотров