Помощник Text
Помощник Text содержит функции, которые помогают в работе с текстом.
Загрузка этого помощника
Этот помощник загружается посредством следующего кода:
$this->load->helper('text');
Доступны следующие функции:
word_limiter()
Усекает строку до указанного количества слов. Пример:
$string = "Here is a nice text string consisting of eleven words.";
$string = word_limiter($string, 4);
// Возвращает: Here is a nice…
Третий параметр это опциональный суффикс, добавляемый к строке. По умолчанию добавляется многоточие.
character_limiter()
Усекает строку до указанного количества символов. Функция поддерживает целостность слов, так что количество символов может быть больше или меньше, чем вы указываете. Пример:
$string = "Here is a nice text string consisting of eleven words.";
$string = character_limiter($string, 20);
// Возвращает: Here is a nice text string…
Третий параметр — это опциональный суффикс, добавляемый к строке. Если не указывается, по умолчанию используется многоточие.
ascii_to_entities()
Конвертирует значения ASCII в символьные соответствия, включая старшие символы ASCII и символы MS Word, которые, как известно, могут создать известные проблемы при использовании на веб-странице. После конвертации они могут безопасно отображаться на веб-страницах и храниться в базе данных. Есть некоторые зависимости от поддерживаемых сервером кодировок, поэтому функция не может быть надежной в 100% случаев, но по большей части она должна правильно определять символы вне нормального диапазона (такие, как символы акцентов). Пример:
$string = ascii_to_entities($string);
entities_to_ascii()
Эта функция противоположна предыдущей. Она превращает сущности в ASCII.
convert_accented_characters()
Делает транслитерацию старших символов ASCII в младшие эквиваленты. Полезно для неанглийских символов, которые должны использоваться в стандартном ASCII для безопасного использования. Например, в URL.
$string = convert_accented_characters($string);
Эта функция использует компаньонский конфигурационный файл application/config/foreign_chars.php, для определения массива транслитерации.
word_censor()
Позволяет вам цензурировать слова в строке. Первый параметр содержит оригинальную строку. Второй параметр содержит массив запрещенных слов. Третий опциональный параметр может содержать значение, на которое следует заменять слова. Если не указано, используются знаки: ####. Пример:
$disallowed = array('darn', 'shucks', 'golly', 'phooey');
$string = word_censor($string, $disallowed, 'Beep!');
highlight_code()
Расцвечивает строки кода (PHP, HTML и т.д.). Пример:
$string = highlight_code($string);
Эта функция использует функцию PHP highlight_string(), которая использует цвета, указанные в файле php.ini.
highlight_phrase()
Подсвечивает фразу в строке текста. Первый параметр содержит оригинальную строку, второй содержит фразу, которую следует подсветить. Третий и четвертый параметр содержат HTML-теги, в которые будет вписана фраза. Пример:
$string = "Here is a nice text string about nothing in particular.";
$string = highlight_phrase($string, "nice text", '<span style="color:#990000">', '</span>');
Пример выше вернет:
Here is a nice text string about nothing in particular.
word_wrap()
Вписывает текст в столбец, шириной в указанное количество символов, так, чтобы он содержал лишь целые слова. Пример:
$string = "Here is a simple string of text that will help us demonstrate this function.";
echo word_wrap($string, 25);
// Сделает:
Here is a simple string
of text that will help
us demonstrate this
function
ellipsize()
Эта функция вырежет теги из строки, разъединит ее в соответствии с указанной максимальной длинной, и добавит многоточие.
Первый параметр это исходная строка, второй это количество символов в финальной строке. Третий параметр это положение многоточия, от 0 до 1, что означает левый и правый концы. Например, значение 1 поместит многоточие справа от сроки, .5 посередине, и 0 слева.
Четвертый опциональный параметр это вид многоточия. По умолчанию будет использовано ….
$str = 'this_string_is_entirely_too_long_and_might_break_my_design.jpg';
echo ellipsize($str, 32, .5);
// Сделает 'this_string_is_e…ak_my_design.jpg'
ПРимер blog.php
<?php
class Blog extends CI_Controller {
function index()
{
$this->load->helper('text');
$string = "Here is a nice text string consisting of eleven words.";
$string = word_limiter($string, 4);
echo "$string<br>";
$string = "Here is a nice text string consisting of eleven words.";
$string = character_limiter($string, 20);
echo "$string<br>";