执行 dirname($dir)$newDir='.a';
执行 dirname($dir)$newDir='.a/b';
return true
假
if判断1
function mkdirs($dir){ if(is_dir($dir) || @mkdir($dir)){ //if判断1 return true; } $newDir = dirname($dir); if(!mkdirs($newDir){ //if判断2 return false; } return mkdir($dir);} $dir = './a/b/c'; mkdirs($dir);
结束return true;
第二次调用自身
真
mkdir('./a');真
第一次调用自身
returnmkdir('./a/b/c')
ifp判断2
if判断2
mkdirs('./a');
return mkdir('.a/b');
mkdirs($dir)
结束
影响if2判断
mkdirs('./a/b);
'./a/b/c'