hallo,
ik ben een script aan het maken in php waarmee je hele dirs kan kopieren. ik ben al best ver maar ik kom een probleem tegen. als ik een dir opgeef om te kopieren dan maakt ie eerst de dir aan en dan leest ie de source dir uit om te kijken wat hij allemaal moet copieren. als er in de sourcedir bestanden staan dan gaat alles goed die kopiert ie gewoon. maar als er in de sourcedir nog een dir staat dan gaat er iets mis. hij kopiert namelijk die dir wel met wat er in staat alleen kopiert hij hem niet naar de juiste plek namelijk de eerste dir die net aangemaakt is.
ik weet neit wat ik fout doe. ik hoop dat iemand me kan helpen.
ik ben een script aan het maken in php waarmee je hele dirs kan kopieren. ik ben al best ver maar ik kom een probleem tegen. als ik een dir opgeef om te kopieren dan maakt ie eerst de dir aan en dan leest ie de source dir uit om te kijken wat hij allemaal moet copieren. als er in de sourcedir bestanden staan dan gaat alles goed die kopiert ie gewoon. maar als er in de sourcedir nog een dir staat dan gaat er iets mis. hij kopiert namelijk die dir wel met wat er in staat alleen kopiert hij hem niet naar de juiste plek namelijk de eerste dir die net aangemaakt is.
ik weet neit wat ik fout doe. ik hoop dat iemand me kan helpen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
| function copycut($itempath) { $theitem = realpath($itempath); if(is_dir($theitem)) { $dirsplit1 = explode("\\",$theitem); $number1 = count($dirsplit1); $newp .= "".$dirsplit1[$number1-1]."/"; mkdir("d:/test2/".$newp.""); $dirhandle = opendir($theitem); while(false !== ($files = readdir($dirhandle))) { if(($files !== ".") && ($files !== "..")) { if(is_dir("".$theitem."/".$files."")) { $subdir = realpath("".$theitem."/".$files.""); copycut($subdir); } elseif(is_file("".$theitem."/".$files."")) { $fileinfo = pathinfo("".$theitem."/".$files.""); chmod("".$theitem."/".$files."",0777); copy("".$theitem."/".$files."","D:/test2/".$newp."".$fileinfo['basename'].""); } } } closedir($dirhandle); return true; } elseif(is_file($theitem)) { $fileinfo = pathinfo("".$theitem.""); chmod($theitem,0777); copy("".$theitem."","D:/test2/".$fileinfo['basename'].""); } else { return false; } } |
Microsoft Windows: A thirty-two bit extension and graphical shell to a sixteen-bit patch to an eight-bit operating system originally coded for a four-bit microprocessor which was written by a two-bit company that can't stand one bit of competition