Δημιουργία φόρμας Web της μηχανής αναζήτησης . Σε αυτό το παράδειγμα , το αρχείο της PHP script θα ονομάζεται " search.php . " Η φόρμα σας θα χρειαστεί ένα πλαίσιο εισαγωγής κειμένου και ένα κουμπί " Υποβολή" .
2
Δημιουργήστε μια λειτουργία για να αναζητήσετε τα αρχεία του server και καταλόγους . Κάνοντας μια λειτουργία θα επιτρέψει την εύκολη αναζήτηση των υποκαταλόγων . Η λειτουργία θα έχει μία απαιτούμενη παράμετρο , η οποία θα είναι η συμβολοσειρά αναζήτησης .
Λειτουργία αναζήτησης ( $ λέξη-κλειδί ) { }
> εικόνων
3
Προσθέστε μια προαιρετική παράμετρο για τις διαδρομές υποκατάλογο . Εάν αυτή η δεύτερη παράμετρος δεν έχει καθοριστεί, η λειτουργία θα προκαθορίσει την αναζήτηση στο τρέχοντα κατάλογο .
Λειτουργία αναζήτησης ( $ λέξη-κλειδί ) {
αν ( func_num_args ( ) > 1 ) $ dir = func_get_arg ( 1 ) ?
άλλο $ dir = " . "?
}
Η 4
Διαβάστε τα περιεχόμενα του καταλόγου σε μια σειρά . Προσθέστε αυτόν τον κωδικό στην αναζήτηση ( λειτουργία )
$ dirStream = opendir ( $ dir ) ? .
Ενώ ( $ nextFile = readdir ( $ dirStream ) ) $ dirArray [ ] = $ nextfile ?
closedir ( $ dirStream ) ?
5
μετακινηθείτε μέσα από τα περιεχόμενα του πίνακα κατάλογο χρησιμοποιώντας ένα βρόχο foreach
foreach ( $ dirArray από $ thisFile ) { .
}
Η 6
Δημιουργήστε μια μεταβλητή για να αποθηκεύσουμε την σχετική διαδρομή από την PHP script για να το αρχείο που αναζητήσατε . . . . Προσθέστε αυτό εντός του βρόχου foreach
$ thisPath = $ dir " /" $ thisFile ?
Η 7
Προσθέστε μια γραμμή για την πρόληψη από τη μηχανή αναζήτησης εμφανίζει τα αποτελέσματα από τα κρυφά αρχεία ( όπως " htaccess ").
αν συνεχίσει ( substr ( $ thisFile , 0,1 ) == " . ")? .
8
Ελέγξτε για να δείτε εάν η τρέχουσα αρχείου σε $ dirArray είναι στην πραγματικότητα ένα υποκατάλογο , στην οποία περίπτωση θα πρέπει να αποθηκεύονται σε μια σειρά για να αναζητήσετε μέσα αργότερα .
αν ( τύπος αρχείου ( $ thisPath ) == " dir " ) {
$ subdir [ ] = $ thisFile ?
συνεχίσει?
}
Η 9
Ελέγξτε τα περιεχόμενα του τρέχοντος αρχείου για να δείτε εάν περιέχει τη συμβολοσειρά αναζήτησης αποθηκεύονται σε $ λέξη-κλειδί , και , εάν ναι , εμφανίζει μια σύνδεση με το αρχείο . Βρόχο foreach σας θα πρέπει τώρα να μοιάζει κάπως έτσι : . .
Foreach ( $ dirArray από $ thisFile ) {
$ thisPath = $ dir " /" $ thisFile ?
Αν ( " . " substr ( $ thisFile , 0,1 ) == ) να συνεχίσει? " . " //δεν αναζητήσετε κρυφά αρχεία , τα οποία αρχίζουν με
αν ( τύπος αρχείου ( $ thisPath ) == " dir " ) {
$ subdir [ ] = $ thisPath ? //προσθήκη σε μια σειρά επιχείρηση " " $ thisFile " \\ n" ? . .
}
Η 10
Προσθέστε μια γραμμή στο τέλος της έρευνας ( λειτουργία ) για να μετακινηθείτε μέσα από τη σειρά $ subdir και να αναζητήσετε όλους τους υποκαταλόγους . Αν δεν θέλετε να αναζητήσετε υποκαταλόγους , μην προσθέσετε αυτή τη γραμμή
foreach ( $ subdir από $ thisDir ) αναζήτηση ( $ λέξη-κλειδί , $ thisDir ) ? .
11
Προσθήκη μια τελική γραμμή της PHP , μετά την πλήρη έρευνα ( ) συνάρτηση για να δούμε αν τα δεδομένα φόρμας έχει υποβληθεί , και , αν ναι , καλέστε την αναζήτηση ( λειτουργία ) . Πλήρη κώδικα σας θα πρέπει να μοιάζει κάπως έτσι :
λειτουργία αναζήτησης ( $ λέξη-κλειδί ) {
αν ( func_num_args ( ) > 1 ) $ dir = func_get_arg ( 1 ) ?
άλλο $ dir = " . "?
$ dirStream = opendir ( $ dir ) ?
ενώ ( $ nextFile = readdir ( $ dirStream ) ) $ dirArray [ ] = $ nextFile ?
closedir ( $ dirStream ) ? .
foreach ( $ dirArray από $ thisFile ) {
$ thisPath = $ dir " /" . $ thisFile ?
αν ( substr ( $ thisFile , 0,1 ) == " "). συνεχίσετε ?
αν ( τύπος αρχείου ( $ thisPath ) == " dir " ) {
$ subdir [ ] = " } εάν ( isset ( $ _GET [' κλειδί '] ) && $ _GET [ "κλειδί" ] ! = " " ) έρευνα ( $ _GET [ "κλειδί" ] ) ? ; >
Η
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα