$value) { $cwn++; $words_word_dum = pack("NN",$pos_sitewords+strlen($to_print_sitewords), $pos_word_ind+strlen($to_print_word_ind)); $to_print_sitewords .= "$word\x0A"; $to_print_word_ind .= pack("N",strlen($value)/4).$value; $words[$word] = $words_word_dum; if (strlen($to_print_word_ind) > 32000) { fwrite($fp_SITEWORDS, $to_print_sitewords); fwrite($fp_WORD_IND, $to_print_word_ind); $to_print_sitewords = ""; $to_print_word_ind = ""; $pos_sitewords = ftell($fp_SITEWORDS); $pos_word_ind = ftell($fp_WORD_IND); } } fwrite($fp_SITEWORDS, $to_print_sitewords); fwrite($fp_WORD_IND, $to_print_word_ind); fclose($fp_SITEWORDS); fclose($fp_WORD_IND); print "Build hash\n"; build_hash(); print "$cfn files are indexed\n"; #===================================================================== # # Function scan_files ($dir) # Last modified: 05.04.2005 16:41 # #===================================================================== function scan_files ($dir) { global $base_dir, $base_url, $cfn; global $no_index_dir, $file_ext, $cut_default_filenames, $default_filenames, $url_to_lower_case, $no_index_files; $dir_h = opendir($dir) or die("Can't open $dir"); while (false !== ($file = readdir($dir_h))) { if ($file != "." && $file != "..") { $new_dir = $dir."/".$file; if ( is_dir($new_dir)) { if (preg_match ("'$no_index_dir'i", $new_dir)) { continue; } scan_files($new_dir); } else { if (preg_match ("'$file_ext'i", $new_dir)) { $url = preg_replace ("'^$base_dir/'", "$base_url", $new_dir); if (preg_match ("'$no_index_files'i", $url)) { continue; }; if ($cut_default_filenames == "YES") { $url = preg_replace ("'$default_filenames'i", "/", $url); } if ($url_to_lower_case == "YES") { $url = strtolower($url); } if ($fd = fopen ($new_dir, "rb") or print "Can't open file: $new_dir \n") { $size = filesize($new_dir); $html_text = @fread ($fd, $size); fclose ($fd); index_file($html_text,$url); } } } } } closedir($dir_h); } #===================================================================== ?>