O terceiro segmento altera o diretório atual com a de um subdiretório, que ainda não tomou atual. Ele vai para um diretório sub seguindo uma ordem alfabética dos sub-diretórios. A função recursiva é chamado mais e mais; Se em qualquer uma das iterações não há subdirectório, em seguida, o terceiro segmento de código é ignorada. Quando todos os subdiretórios possíveis foram feitas corrente em um ramo mais inferior da árvore de diretórios, a função tem de mover-se; que é a função tem que fazer a atual diretório pai para que ele possa, em seguida, fazer a próxima sub diretório do pai, atual.
O objectivo do quarto segmento de código é a mover-se a função. Se o diretório pai para ser feita actual é tornar-se o diretório acima do diretório superior, em seguida, que, acima de diretório não é feita corrente; o quarto segmento de código cuida disso. O Código de Função recursiva O segmento de código que exibe os caminhos na matriz para o navegador não faz parte da função recursiva. O código da função recursiva é dado abaixo: function searchTree () {global de US $ aboveDir, $ dirArr; $ CDirArr scandir = (".
"); //obter lista de diretórios do diretório atual for ($ i = 0; i $ if ((is_file ($ CDirArr [$ i]))