За час, що я займаюся розробкою на WordPress, у мене накопичилося безліч корисних "сніпетів" (уривків з коду, які допомагають вирішувати якісь завдання). І тому, сьогодні хочу поділитися отривочком, який допоміг і до сих пір допомагає мені в багатьох випадках, коли потрібно працювати з часом і так чи інакше перетворювати unix time в дні, години, хвилини і секунди.
І хоча моє життя стало легше з введенням нових можливостей PHP5.3. Наприклад, в нашому арсеналі з версії 5.2 з'явився клас для роботи з датами DateTime, а у версії 5.3 - зникає необхідність у винаході власних рішень по додавання і віднімання дат. Це безсумнівно зручно.
Але ось, щоб перевести мітку unix timestamp в дні, години, хвилини і секунди початківцям розробникам як і раніше потрібно шукати якесь рішення або зручну функцію. Я пару років тому полінувався створювати щось своє і після ретельних пошуків знайшов підходяще математичне рішення 🙂
Отже, представляю вам уривок з коду:
Символ% в PHP, як і в деяких інших мовах програмування, являє собою залишок від ділення. Якщо точніше, то це значення отримується при відніманні цілого приватного з початкового значення. Тобто, 10/3 = 9 (значення integer), в той час як 10% 3 = 1 (це і є залишок від ділення 10 на 3).
Я пояснюю цей момент детально, тому що сам гальмував, коли вперше побачив цей код і спробував зрозуміти його сенс.
Оскільки значення $ month (місяці) вибрано максимально можливим значенням, то від нього вже не береться залишок при діленні, наприклад, на 365. Це було б необхідно, якби ми хотіли отримувати ще й кількість років з тимчасових міток.
Той же самий код, але оформлений у вигляді функції:
Успіхів вам у програмуванні на чудовому мовою PHP!
Дякую, що завітали на мій блог. Мене звуть Богдан, я живу в Алма-Аті (Казахстан). Давним-давно, ще в 7 класі школи почалося моє захоплення програмуванням в цілому (завдяки урокам Delphi на інформатиці). А в 9 класі в нашу школу прийшов системний адміністратор, який виявився завзятим SEO-шником і взагалі класним хлопцем, і він то і розповів мені про WordPress, і про те, як можна заробляти гроші ведучи свій блог в мережі і просуваючи його. Так і почалося моє знайомство з WP і з темою заробітку в мережі.
На цьому блозі я не заробляю, він просто створений як сховище корисних фішок, які я знаходжу в процесі роботи. А заробляю я веб-розробкою в стилі "фріланс", в якій непогано просунувся за останні роки. Пробував різні технології, але найбільше люблю писати back-end (внутрішню логіку) додатків на PHP і JS. Ну і звичайно, пишу дорогі і складні плагіни для улюбленого WP на замовлення.
Ще люблю воду, велосипед, лижі і візуальну естетику у всьому.
Гарного дня вам!