Основное отличие функций mkdir() и mkdir() с параметром recursive заключается в том, что первая создаёт один подкаталог в текущей директории, а вторая позволяет рекурсивно создавать целые деревья каталогов, создавая не только сам каталог, но и все необходимые для его содержания родительские директории. 14
Для этого используется флаг -p. 15 Например, команда mkdir -p app/tmp/logs
сначала создаст директорию app в локальной директории, затем — tmp внутри директории app, и наконец — logs внутри директории tmp. 5
Таким образом, основное отличие в том, что mkdir() создаёт один каталог, а mkdir() с параметром recursive — целую структуру каталогов, включая все необходимые родительские директории. 14