Вчера надо было сделать скрипт, который создаёт директории, но они не всегда создаются в уже существующих директориях.
Для этого у функции mkdir() есть третий параметр, который позволяет рекурсивно создавать директории, т.е. если надо создать /dir1/dir2/dir3, но при этом не существует dir2, то можно написать:
1 |
mkdir ("/dir1/dir2/dir3", 0755, true); |
Но под Windows такая запись будет выдавать ошибку. Решение было найдено в комментариях на php.net.
Под Windows, при рекурсивном создании директории, надо заменять все «/» на «\».
Т.е. надо модифицировать код так:
1 2 |
$new_name = str_replace("/", "\\", $new_name); mkdir($new_name, 0755, true); |
При обычном, не рекурсивном, создании дирректорий заменять «/» на «\» не обязательно.
Источник: http://2people.ru/?p=26
https://corp2.info/razrabotka-i-sozdanie-sajtov-internet-magazinov-veb-proektov-kiev-1038.html
Leave a Reply