protected function validData($reportData) { $userRoleDescription = strtolower(Zend_Auth::getInstance()->getIdentity()->getRoleLongDescription()); $validationRequired = !in_array($userRoleDescription, array('gestor', 'digitador'), true); if ($validationRequired) { $titulo = $reportData['title']; // str_replace(, "\n", ''); $texto = str_replace("\n", ' ', $reportData['report']); // preg_replace(array('~[:;!?]|[.,](?![0-9])|\'s~', '~\s+~'), array('', ' '), $reportData['report']); // $palavras = trim($titulo) . ' ' . trim($texto); $characters = mb_strlen($titulo, "UTF-8") + mb_strlen($texto, "UTF-8"); $words = Vtx_Util_Formatting::contadorPalavras($titulo) + Vtx_Util_Formatting::contadorPalavras($texto); //$characters = $words; //$words = count(explode(' ', trim($palavras))); //var_dump($palavras,$words,$characters); /* var_dump($words); die; um dois; três qu4tró% (çinço) çeis sete 39 / * * O Relato deverá ter de 60 linhas a 120 linhas, de 500 a 1200 palavras e de 3.000 a 7.140 caracteres, contando o Título. */ if ($characters < 2900 or $words < 480 or $words > 1300) { return array('status' => false, 'messageError' => 'O Relato deverá ter mais de 3.000 caracteres e ter de 500 a 1200 palavras, contando o Título.'); } if ($characters > 7240 or $words < 480 or $words > 1300) { return array('status' => false, 'messageError' => 'O Relato deverá ter menos de 7.140 caracteres e ter de 500 a 1200 palavras, contando o Título.'); } } return array('status' => true); }