2013-08-27 2 views
0

Я пытаюсь автоматически создавать папки с информацией из базы данных и по какой-то причине, хотя обе итерации имеют одинаковое значение, она создает дополнительную папку вместо того, чтобы помещать файлы в одну и ту же. Я прокомментировал все в скрипте, но эта строка, и он все еще делает это, поэтому я знаю, что это преступник. Вот мой код:PHP mkdir создание дубликатов папок

if (!is_dir($state."/".$county."-County")) { 
    mkdir($state."/".$county."-County"); 
} 

Спасибо за любую помощь!

EDIT:

Структура папки выглядит следующим образом:

California 
    Alameda-County 
    Alameda-County 

Это точно так же.

+0

- это корпус другой? 'MyFolder' и' myFolder' и 'myfolder' - это совершенно разные имена в некоторых операционных системах. –

+0

Можете ли вы добавить скриншот или список файлов/каталогов, чтобы помочь прояснить вопрос? – nageeb

+1

'это создание дополнительной папки', что называется этой дополнительной« папкой », также если папка' state' не существует, вы получите ошибку, вы должны использовать рекурсивный флаг, если вы не уверены в его наличии, 'mkdir ($ path, null, true); ' –

ответ

0

У вас есть УВЕРЕН:, что оба вызова имеют ТОЧНЫЕ одинаковые значения? Есть много персонажей, которые СМОТРЮТ те же, но принципиально разные внутри. Если вы хотите быть уверенными, что используете одни и те же значения, то не выполняйте операцию по созданию пути дважды. Сделайте это один раз:

$path = $state . "/" . $county . "-County"; 
if(!is_dir($path)) { 
    mkdir($path); 
} 
+0

Нет смысла. Вы ** не можете ** создать запись в качестве dir, если она уже существует как ** файл ** –

+0

Вы также должны использовать регистр для '$ state' и' $ country' следующим образом: 'ucfirst (strtolower ($ state)) 'и' ucfirst (strtolower ($ country)) ' –

+0

Они, безусловно, одинаковые точные значения. –

Смежные вопросы