Last active
October 23, 2017 12:18
-
-
Save r17x/8b64840a345dff76edb9adff200e8edd to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/* | |
* | |
* Filter 420 eh 240 . limit char on paragraph | |
*/ | |
$sample = '<p class="job">Psicóloga Sanitaria y Sexóloga | Redactora en Psicología y Mente</p> <p class="stats">41 artículos</p> <p class="desc"></p><p><strong>Isabel Rovira Salvador</strong> (Valencia, 1989) es Licenciada en Psicología por la Universitat de València. Especializada en Sexología Clínica y Terapia de Pareja por el Instituto Superior de Estudios Psicológicos (ISEP) donde, entre otras cosas, descubrió su pasión por la psicología de la infertilidad. Para completar su formación clínica, realizó el Máster de Psicología General Sanitaria en la Universitat de Valencia.</p> <p>Ha desempeñado labores de psicóloga en diversos centros, entre ellos la Unidad de Salud Mental del Hospital Clínico Universitario de Valencia y el Instituto Valenciano de Infertilidad (IVI) en Barcelona.</p> <p>Actualmente, Isabel compatibiliza su trabajo con un blog divulgativo llamado “Sexplícitamente Hablando”. En el que reflexiona sobre aspectos psicológicos de las relaciones personales y sobre la sexualidad.</p> <p></p>'; | |
$rmtags = strip_tags($sample); | |
$sliceToArr = explode(' ', $rmtags); | |
//$rmEmpty = function($text){ | |
// return !empty($text) || $text != ''; | |
//}; | |
// Remove Empty But You whitechar On Text is missing | |
//$cleanArr = array_filter($sliceToArr , $rmEmpty); | |
$cleanArr = $sliceToArr; | |
echo 'Total Char: '.array_sum( | |
array_map('strlen', $cleanArr) | |
); | |
//.PHP_EOL.'Count : '.count($cleanArr); | |
$reverse = array_reverse($cleanArr); //Reverse Array For Fastest Search | |
for($i = 1; $i<=count($reverse); $i++){ | |
$arr_slice = array_slice($reverse,$i); | |
$countArr = array_sum( | |
array_map('strlen',$arr_slice) | |
); | |
if ($countArr <= 240){ | |
$final = array_reverse($arr_slice); // Reverse To Origin Text | |
break; | |
} | |
} | |
$text = implode(' ', $final); | |
echo PHP_EOL.'TEXT FINAL:'.$text.PHP_EOL."Total Char : ".strlen( | |
preg_replace('/\s+/', '',$text) | |
).PHP_EOL.PHP_EOL; | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment