Оба интересны и обеспечат повышение скорости, так как они компилируют исходный код в двоичное представление, которое тогда выполняется механизмом PHP.
Любой огромный веб-сайт, работающий с PHP (Facebook, например), выполняет своего рода систему кэша кода операции как MMCache.
проблема состоит в том, что их не очень легко настроить в зависимости от Вашей системы.
Как насчет System.IO.Directory.Delete? У него есть опция рекурсии, вы даже ее используете. При просмотре кода кажется, что вы пытаетесь сделать что-то немного другое - очистить каталог, не удаляя его, верно? Что ж, вы можете удалить его и создать заново :)
В любом случае вы (или какой-либо метод, который вы используете) должны перебирать все файлы и подкаталоги. Однако вы можете перебирать файлы и каталоги одновременно, используя GetFileSystemInfos :
foreach(System.IO.FileSystemInfo fsi in
new System.IO.DirectoryInfo(path).GetFileSystemInfos())
{
if (fsi is System.IO.DirectoryInfo)
((System.IO.DirectoryInfo)fsi).Delete(true);
else
fsi.Delete();
}
Почему это не изящно? Он чистый, легко читаемый и выполняет свою работу.
Ну, вы всегда можете просто использовать Directory.Delete ... .
http://msdn.microsoft.com/en-us/library/aa328748%28VS.71%29.aspx
Или, если хотите, удалите каталог с помощью WMI.