Я новичок в php. Сейчас делаю один скрипт, работающий с временем. У меня есть массив времени, который я релизовал как 930,1030,1230 и.т.д. С этим массивом просиходят различные действия с использованием функций и по итогу мне нужно вернуть время в формате unix. По моей задумке это выглядит так - берём начало сегодня в unix функцией mktime, а затем прибавляем 930,1030,1230 и.т.д. Но я забыл учесть что такие числа нельзя просто напросто даже умножить на часы (3600) что будет неккоректно. Возникает вопрос - можно ли вообще функциями php перевести дату типа 930 в unixtime?
SUBSTR
если я правильно понимаю, то 930 - это 9:30
Тогда проще всего
$minutes = intVal(substr($wierdTime,-2));
$hours = intVal(substr($wierdTime,0,-2));
N.B. Не надо так дату писать.
Можно дополнить ведущий нуль к часам и воспользоваться методом createFromFormat:
$time = '930';
$dt = DateTime::createFromFormat('Hi', str_pad($time, 4, '0', STR_PAD_LEFT));
echo $dt->getTimestamp(), PHP_EOL; // 1530171000 - unix timestamp
echo $dt->format('Y-m-d H:i'); // 2018-06-28 09:30 - тут будет текущий день
Если нужно только количество секунд с текущей полуночи(разве это unixtime?), его можно посчитать:
echo ($dt->format('H')*60 + $dt->format('i'))*60; //34200
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
На данный вопрос уже ответили:
Вот к примеру спарсил я плейлист и мне нужны в нем первые 3 строки, как мне их получить? Учитывая то, что длина строк всегда разная