[Program] Διαβάστε xls αρχεία με την PHP

Δεν Gravatar

Όπως και τα περισσότερα από τη θέση μου ακόμα και αυτή δεν έρχεται μόνο με την πρόθεση να κάνει κάποια ενημέρωση », για να μου θυμίζουν πως έχω λύσει ένα πρόβλημα που συνέβη σε μένα: Στην πραγματικότητα, η μνήμη μου είναι συνήθως απατηλό και googol Για να βρείτε τις ίδιες πληροφορίες περισσότερες από μία φορά δεν μου αρέσει πάρα πολύ ^ _ ^

Μια δραστηριότητα που συχνά πρέπει να κάνουμε είναι να επεξεργαστεί "στον αέρα" ένα αρχείο xls (ίσως ως αποτέλεσμα dell'upload στη διάθεση του χρήστη) και να διαχειρίζεται τα δεδομένα που περιέχονται σε αυτό (ενδεχομένως δομημένη όπως εμείς, σε διαφορετική περίπτωση το θέμα είναι πρακτική ..) για παράδειγμα, το δημοφιλές πίνακες σε μια βάση δεδομένων ή απλά να τις δείτε στο site μας.

Λοιπόν, η λύση στο πρόβλημα αυτό είναι πιο εύκολο απ 'όσο νομίζετε.

Θα τρέχει ένα πρόγραμμα για Sourceforge που καθιστά διαθέσιμο μέσω της κατηγορίας ExcelReader ό, τι χρειαζόμαστε.

Έχοντας συμπεριληφθεί οι δύο reader.php αρχεία και oleread.inc στο script μας και θα είμαστε έτοιμοι να κάνουμε τη δουλειά "βρώμικος".

Πρώτα initialize τάξη μας και στη συνέχεια passiamogli το αρχείο για να ανοίξετε:

  $ Data-> διαβάστε nome_filel.xls ( ')? 

Το επόμενο πράγμα που κάνει, φυσικά, είναι να γίνει ένας βρόχος για κάθε σειρά και στήλη επισημαίνοντας ότι:

  $ Data-> φύλλα [0] [ 'numrows']?
 $ Data-> φύλλα [0] [ 'numCols']? 

αντιπροσωπεύει τον αριθμό των γραμμών και στηλών στο αρχείο xls (ιδιαίτερα στο πρώτο φύλλο του χαρτιού).
Σε αυτό το σημείο μπορούμε να πάρουμε την τιμή που περιέχεται σε κάθε κύτταρο που πρόσβασης όπως κάνουμε με ένα ασήμαντο μήτρα:

  $ Data-> φύλλα [0] [ 'κύτταρα'] [$ i] [$ j]? 

Ένα δείγμα δέσμης ενεργειών για να δείτε ένα βίντεο δεδομένα από ένα αρχείο xls σε μορφή πίνακα είναι οι εξής:

  <?
 Excel require_once '/ reader.php'?
 $ Data = νέα Spreadsheet_Excel_Reader ()?
 $ Data-> setOutputEncoding ( 'cp1251')?
 $ Data-> διαβάστε nome_file.xls ( ')?
 error_reporting (E_ALL ^ E_NOTICE)?

 echo "<table>"?
 για ($ i = 1, $ i <= $ data-> φύλλα [0] [ 'numrows'], $ i + +) (
         echo "<tr>"?
	 για ($ j = 1, $ j <= $ data-> φύλλα [0] [ 'numCols'], $ j + +) (
		 echo "<td>. $ data-> φύλλα [0] [ 'κύτταρα'] [$ i] [$ j ]."</ td>"?
	 )
	 echo "</ tr>"?
 )
 echo "</ table>"?
 ?> 

PS: Φυσικά μπορείτε επίσης να βρόχος για τα δελτία που συνθέτουν το αρχείο .. xls

Reblog αυτή τη θέση [με Zemanta]

Δημοτικότητα: 8% [?]

Ετικέτες:


leave a response , or trackback from your own site. Μπορείτε να ακολουθήσετε οποιεσδήποτε απαντήσεις σε αυτή την καταχώρηση μέσω RSS 2.0 feed. Μπορείτε να αφήσετε μία απάντηση, ή trackback από το δικό σου site.

AddThis Social Bookmark Button

Αυτή η ιστοσελίδα χρησιμοποιεί παρατηρήσεις IntenseDebate, αλλά δεν είναι επί του παρόντος Επειδή φορτώνονται είτε browser σας δεν υποστηρίζει JavaScript, ή δεν είχαν φορτίο αρκετά γρήγορα.

Αφήστε μια απάντηση