Имя файла по handle в PHP

Всем привычна схема, при которой известно имя файла, и вы совершаете с ним какие то манипуляции. В PHP много функций, которые предоставляют именно такой функционал.

Что делать, когда есть только file handle? Как получить имя открытого файла?

В базовом расширении для работы с файловой системой ничего подходящего не нашлось. Мне уже показалось, что следствие зашло в тупик.

Решение было найдено в другом базовом расширении, работающем с потоками. Потоковые функции в качестве аргумента могут принимать file handle.

Для решения нашей проблемы будет полезна функция stream_get_meta_data.

Данный пример выведет что то вроде следующего:

Среди прочих мета-данных мы видим имя временного файла:

Мало букафф? Читайте есчо !

php - получить первый день следующего месяца

Ноябрь 19, 2019 г.

При создании расписаний, календарей, и т.п. могут возникать задачи вроде - получить timestamp первого дня этого месяца, или последнего дня следующего и т.п. В лоб это решается вот так: [crayon-68b071a7dc5a5667464970/] Со следующим месяцем ...

Читать

Сериализация HTML строки из PHP в JS

Август 7, 2019 г.

Рассмотрим разновидность задачи по сериализации данных - мне нужно было сохранить HTML код в атрибуте контейнера, чтобы вставлять его по определенному событию в верстку. Можно было сразу вставить кусочки HTML кода в документ и далее манипулировать ...

Читать

Base Auth в PHP

Ноябрь 17, 2022 г.

Рассмотрим здесь вариации с выполнением base auth. Как оказывается из опыта работы с некоторыми API, они не являются эквивалентными. И одна форма запроса может не работать, в то время как другая будет выполняться. Задача следующая - получить содержимое ...

Читать

Как пользоваться flock()?

Март 24, 2017 г.

Если вы решаете задачу конкурентного доступа к файлу (или какому то другому ресурсу) в PHP, и решили использовать flock() для этой цели, то вам понадобится верно представлять как работает механизм блокировки. Представим себе, что есть разные программные ...

Читать
 

Комментарии к «Имя файла по handle в PHP»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: