Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak
Post your project for free and start getting offers from freelance performers within minutes after posting!

PHP calculate % and extract the result

Translated3 USD

Client's feedback on cooperation with freelancer

Quality
Professionalism
Price
Availability
Terms

I solved several tasks on PHP in 10 minutes. pleasant to work 🙂

Freelancer's feedback on cooperation with Vladislavs Sipov

Payment
Task formulation
Requirements
Availability

Excellent customer, clearly placed tasks and paid in time, I recommend cooperation

Profile deleted

The client does not want to make a prepayment? Payment via Safe help avoid possible fraud.
  1. 473    21  0
    1 day3 USD

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

  2. 1137    75  0
    1 day5 USD

    I will be happy to take your task. We will decide during the evening.
    С удовольствием возьмусь за вашу задачу. Решим в течении вечера.

  3. 2748    153  0   1
    1 day5 USD

    Hello to you. Ready to do.
    Здравствуйте. Готов сделать.

  4. 6 more hidden bids
  • Profile deleted
    23 October 2017, 21:03 |

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

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

  • Profile deleted
    23 October 2017, 21:21 |

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

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

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

  • Profile deleted
    23 October 2017, 21:27 |

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

  • Profile deleted
    23 October 2017, 21:29 |

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

  • Profile deleted
    23 October 2017, 21:32 |

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

  • Profile deleted
    23 October 2017, 21:32 |

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


  • Profile deleted
    23 October 2017, 21:46 |

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

    ceil

    floor


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

  • Profile deleted
    23 October 2017, 21:54 |

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

  • Profile deleted
    23 October 2017, 21:29 |

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

  • Aleksandr S.
    23 October 2017, 21:42 |

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

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

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

  • Vyacheslav G.
    23 October 2017, 21:42 |

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

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

  • Vyacheslav G.
    23 October 2017, 21:43 |

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

  • Profile deleted
    23 October 2017, 21:44 |

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

  • Profile deleted
    23 October 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 символа можно сэкономить

  • Vyacheslav G.
    23 October 2017, 22:01 |

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

  • Profile deleted
    23 October 2017, 22:07 |

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

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

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

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

  • Vyacheslav G.
    23 October 2017, 22:06 |

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

  • Profile deleted
    23 October 2017, 22:09 |

    Почему?

  • Profile deleted
    23 October 2017, 22:09 |

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

  • Profile deleted
    23 October 2017, 22:11 |

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

  • Vladislavs Sipov
    23 October 2017, 22:19 |

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

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

  • Aleksandr S.
    23 October 2017, 22:21 |

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


  • Vladislavs Sipov
    23 October 2017, 22:20 |

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

    <?php echo esc_attr(floor($product->get_price()-$product->get_price()/100*5));  ?>
  • Profile deleted
    23 October 2017, 22:22 |

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

  • Aleksandr S.
    23 October 2017, 22:23 |

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

  • Vladislavs Sipov
    23 October 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 October 2017, 22:27 |

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

  • Vladislavs Sipov
    23 October 2017, 22:28 |

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

  • Profile deleted
    23 October 2017, 22:28 |

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

  • Profile deleted
    23 October 2017, 22:30 |

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

  • Profile deleted
    23 October 2017, 22:31 |

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

  • Aleksandr S.
    23 October 2017, 22:36 |

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

    esc_attr() WP 2.8.0

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

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

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


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

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


Current freelance projects in the category JavaScript

Write an extension for Google Chrome

22 USD

Extension is needed for Google Chrome (fake forecast of the next number or color for the casino) Need to remember the last entered numbers and when the button is pressed, a random number is displayed Also need to remember the entered color and when the button is pressed, show a…

JavaScriptWeb programming ∙ 3 proposals

Fix the landing page for Google Ads, clean up compromised links

Specialist needed to clean compromised links from the website https://armadom.com.ua/ (landing was done on webflow) Google support writes: clean compromised links added below: cdnmetric[.]com/ Write if you have experience with this and know how to fix it to pass the appeal in…

JavaScriptWeb programming

Laravel + VueJS + InertiaJS

Good day, the project is written, it is working and ready to launch. Except for one nuance. SSR(Server Side Rendering) works very slowly, when launching a bot to check the load - the site crashes after 3-4 minutes. If you restart SSR during the check, it works but very slowly.…

JavaScriptPHP ∙ 2 proposals

Writing software for creating an Open Book on the Solana network

107 USD

During the creation of interchangeable tokens (SPL token) on the Solana network, it is necessary to automate the process of creating an Open Book for the token and speed it up by increasing transaction fees. Software functions: - Create Open Book - Set a "tea" limit on the…

JavaJavaScript

Website layout according to the design.

510 USD

Good day. There is a layout in Figma: https://www.figma.com/file/RGVIymprYc4QaiJ5qp3iwL/LayerGame?type=design&node-id=0-1&mode=design There is a UI kit and a ready-made layout of the Main page, implemented in React, animations are done using GSAP. It is necessary to layout 2…

HTML and CSSJavaScript ∙ 38 proposals

Client
Vladislavs Sipov
Latvia Riga  141  0
Project published
6 years ago
212 views