Uma forma mais interessante é você ter um array de diretórios e sair verificando em um laço por cada pasta. assim, caso você adicione mais um diretório, você só precisa adicionar o nome do diretório no array.
<?php
function carregaClasse($nomeClasse){
$pastas = array('class', 'dao');
foreach ($pastas as $pasta) {
if(file_exists("{$pasta}/{$nomeClasse}.php")){
return require_once("{$pasta}/{$nomeClasse}.php");
}
}
throw new Exception("Classe $nomeClasse não existe");
}
spl_autoload_register("carregaClasse");
Você não faz nada caso a classe não exista, uma opção seria lançar um erro. Você também não precisa concatenar os nomes, se usar aspas duplas, pode escrever tudo dentro, até variáveis, eu envolvi as variavels com chaves só para facilitar a leitura.
Mais avançado que isso seria você ler um outro so PSRs e adotar a PSR4 que é o padrão da comunidade e mercado para autoload, neste ponto você irá precisar fazer uso do composer, ele criará o autoload correto pra você.
PSR: http://www.php-fig.org/psr/
Composer: https://getcomposer.org/doc/01-basic-usage.md#autoloading