jestem nowym użytkownikiem forum, a sprowadza mnie tu potrzeba związana z liczeniem znaków.
Potrzebuję skryptu zliczającego ilość znaków ze spacją, bez spacji oraz ilość akapitów w pliku. Dotychczas udało mi się utworzyć poniższy kod:
Wczytywanie pliku:
<form method="post" action="" enctype="multipart/form-data"> <input type="file" name="docfile" /> <input type="submit" name="submit" /> </form> <?php $file = $_FILES['docfile']['name']; //$file = file_get_contents($file); if($ext == "txt" || $ext == "pdf" || $ext == "doc" || $ext == "docx" || $ext == "odt"){ } } ?>
Następnie posiadając wgrany plik, podaję go na zliczanie:
<?php /*Name of the document file*/ $document = 'zliczanie.docx'; /**Function to extract text*/ function extracttext($filename) { //Check for extension //if its docx file if($ext == 'docx') $dataFile = "word/document.xml"; //else it must be odt file else $dataFile = "content.xml"; //Create a new ZIP archive object $zip = new ZipArchive; // Open the archive file if (true === $zip->open($filename)) { // If successful, search for the data file in the archive if (($index = $zip->locateName($dataFile)) !== false) { // Index found! Now read it to a string $text = $zip->getFromIndex($index); // Load XML from a string // Ignore errors and warnings $xml = DOMDocument::loadXML($text, LIBXML_NOENT | LIBXML_XINCLUDE | LIBXML_NOERROR | LIBXML_NOWARNING); // Remove XML formatting tags and return the text } //Close the archive file $zip->close(); } // In case of failure return a message return null; } ?>
Wynik jaki uzyskuje to 1155 znaków przy użyciu funkcji trim, 1157 bez funkcji trim.
Powinienem uzyskać 1010 samych znaków bez spacji oraz 1133 ze spacjami.
Dopiero niedawno rozpocząłem swoją przygodę z programowaniem, więc proszę nie zbrukać mnie z poziomem chodnika.
Dziękuję za wszelkie opinie i pomoc.