Добрый день. Как реализовать подобное? Есть некий отсчет, результат которого неизвестен заранее. Присваиваю значение к переменной $time. Содержание переменной может быть: 1 минута, 2 минуты, 5 минут, 41 минута, 1 час, 2 часа, 5 часов, 21 час, 1 день, 2 дня, 6 дней, 31 день Нужно создать условие, если переменная $time менее 7 дней. Код (Text): if ( $time < 7 ) { // некий код } Подайте пожалуйста идею, как это реализовать. Думал использовать str_replace. Но может есть более красивое решение?
Если с даты публикации до сегодняшнего момента прошло менее 7 дней, то срабатывает некий код. Средствами CMS время с даты публикации выводится только вида: Код (Text): 1 минута/ 2 минуты/ 5 минут/ 41 минута/ 1 час/ 2 часа/ 5 часов/ 21 час/ 1 день/ 2 дня/ 6 дней или 31 день А нужно просто цифру. Причем только дни. Если выводится 19 часов, то выводится 0. Если, например, 3 дня. То выводить просто 3 --- Добавлено --- Или лучше по-другому? Могу средствами CMS получить даты текущую и поста вида 22.05.2017 или 19-05-2017. Как сравнить даты? Чтобы если разница составляла менее 7 дней, то срабатывал код. Думаю, так будет лучше.
В общем, получилось так: Код (Text): function new_product($data1, $data2) { echo '<div class="new-product">'; $post_time = get_option('newproduct') * 86400; // продолжительность в секундах когда товар считаем новым $data1 = current_time('mysql'); // получаем текущее время сайта $data2 = get_post_time('d-m-Y H:s', true); // получаем время поста $data_new_1 = strtotime($data1); // преобразовываем формат даты в секундах $data_new_2 = strtotime($data2); // преобразовываем формат даты в секундах $data_new_3 = $data_new_1 - $data_new_2; // считаем разницу текущей даты и даты публикации записи if( $post_time > $data_new_3 ){ echo 'New'; } echo '</div>'; } Вроде работает. Скажите, с точки зрения программиста, чушь собачья?
Почему бред? Получаю данные из настройки, которую сам создал. Там указываю целое число дней. И получаю количество секунд в указанном временном промежутке.
во первых ты там ничего не получаешь, функция не определена. во вторых ты получишь не int результат, а строку с html версткой 3 - включи отображение всех ошибок. Как включить ? error_reporting ( E_ALL ) + настройка сервера