mkdir () создаст только один каталог (тот, который находится в конце спецификации пути), если вы не включите его второй флаг:
mkdir('abc/data/123', 0777, TRUE);
^^^^
Без этого флага ДОЛЖНЫ существовать каталоги 'abc' и 'abc / data', прежде чем вы сможете создать каталог '123'. С включенным флагом PHP создаст для вас все недостающие промежуточные каталоги.
Кроме того, поскольку вы используете относительные пути, каталог 'edf' должен существовать как подкаталог в любом каталоге, который является вашим "текущим рабочим каталогом". Если его нет в вашем cwd, вам придется изменить свой путь, чтобы указать на него.