Сравнение со значением эпсилона - то, что большинство людей делает (даже в игровом программировании).
необходимо изменить реализацию немного хотя:
bool AreSame(double a, double b)
{
return fabs(a - b) < EPSILON;
}
Редактирование: Christer добавил стопку большой информации об этой теме на недавнее сообщение в блоге . Наслаждаться.
Есть много способов. Более старый способ - scandir
, но DirectoryIterator
, вероятно, лучший способ.
Также существует readdir
(для использования с opendir
) и glob
.
Вот несколько примеров того, как использовать каждый из них для печати всех файлов в текущем каталоге:
DirectoryIterator
использование: (рекомендуется) foreach (new DirectoryIterator('.') as $file) {
if($file->isDot()) continue;
print $file->getFilename() . '<br>';
}
scandir
использование: Поддержка файлов .NET осуществляется достаточно быстро (сравнимо с собственными функциями Win32). Несколько вариантов, которые могут помочь вам повысить производительность: