2015-11-25 2 views
0

Перед тем, как начать .. Im очень новый для PHP ... надеюсь, что вы можете нести со мной по этому поводу.Удаление пустой строки при чтении файла docx в php

У меня есть файл (типа .docx) предложений, которые я разделяю там, где есть период.

Код я использовал это:

$docObj = new Filetotext($fileToTest); 
$docextracted = $docObj->extractText(); 

// pattern to find the fullstop 
$pattern = '/\./'; 
//giving a new line to each sentence 
$current1= preg_replace($pattern, "\r\n", $docextracted); 

$splitArray = explode("\n", $current1); 
//$mainFile = $splitArray; 
$mainFile = (str_replace(' ', '', $splitArray)); 
print_r($mainFile); 

Файл фактически содержит следующее: (только для образца цели)

This is a test file. The purpose of this test file is to ensure that the file reading part is working. This test is important. This test ends here. 

Однако когда print_r($mainFile); выдает следующее:

Array 
(
    [0] => 
    [1] => Thisisatestfile 
    [2] => Thepurposeofthistestfileistoensurethatthefilereadingpartisworking 
    [3] => Thistestisimportant 
    [4] => Thistestendshere 
    [5] => 
) 

Пустые части (забыли слово для него) в первом и последнем массиве индексов это проблема. Я пробовал другие файлы и то же самое. Первый и последний индекс пуст. Это вызывает проблему, когда я пытаюсь установить счетчик на это или когда я пытаюсь сравнить массив с другими массивами.

Есть ли что-то не так с моим кодом, который приносит пустую часть?

Любой вид помощи очень ценится :)

+0

str_replace предлагает вместо пробелов пробел в первом (0-м) и 5-м индексе? Не могли бы вы попытаться взломать \ r \ n, а не просто \ n? – Daniel

ответ

1

делает накладку на $ current1 удалить пробельные до и после, до взорваться(), следует сделать трюк.

.... 
$current1 = trim($current1); 
$splitArray = explode("\n", $current1); 
.... 
+0

Это сработало! Также попробовал array_filter ($ mainFile), предложенный другим пользователем (который теперь удалил ответ.) Он работал на полпути. Удалено последний индекс. Но это работает для обоих! :) благодаря – Tsar

Смежные вопросы