Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: htmlspecialchars()
 
 автор: winflip   (25.07.2009 в 14:02)   письмо автору
 
 

Скажите пожалуйста, как выглядит код(PHP) функции htmlspecialchars, если её описать как пользовательскую функцию. Буду благодарен

  Ответить  
 
 автор: Жмурик   (25.07.2009 в 18:17)   письмо автору
 
   для: winflip   (25.07.2009 в 14:02)
 

function my_htmlspecialchars($string, $quote_style = ENT_COMPAT, $charset = 'ISO-8859-1', $double_encode = true)
{
    return htmlspecialchars($string, $quote_style, $charset, $double_encode);

гг

  Ответить  
 
 автор: winflip   (26.07.2009 в 10:14)   письмо автору
 
   для: Жмурик   (25.07.2009 в 18:17)
 

Блин ну понятно дело что её использовать нельзя!!!

  Ответить  
 
 автор: sim5   (26.07.2009 в 10:35)   письмо автору
 
   для: winflip   (26.07.2009 в 10:14)
 

Ну разве трудно почитать мануал?

string htmlspecialchars (string string [, int quote_style [, string charset]])

Некоторые символы имеют в HTML специальное значение и должны быть представлены мнемониками HTML для сохранения своего значения. Эта функция возвращает строку с выполненной конвертацией.

Необязательный второй аргумент, quote_style, сообщает функции, что делать с символами одинарных и двойных кавычек. Режим по умолчанию, ENT_COMPAT, обратно совместим только для трансляции двойных кавычек и оставляет одинарные кавычки неоттранслированными. Если установлен ENT_QUOTES, и двойные, и одинарные кавычки транслируются, а если установлен ENT_NOQUOTES - ни одинарные. ни двойные кавычки не транслируются.

Функция транслирует только символы перечисленные ниже:

'&' (амперсанд) становится '&'
'"' (double quote) становится '"' когда ENT_NOQUOTES не установлен
''' (single quote) становится ''', только когда установлен ENT_QUOTES.
'<' (less than) становится '&lt;'
'>' (greater than) становится '&gt;'


Из этого следует, что использовав str_rplace(), которая может принимать в качестве аргументов массивы, вы решите свою задачу.

  Ответить  
 
 автор: winflip   (26.07.2009 в 10:42)   письмо автору
 
   для: sim5   (26.07.2009 в 10:35)
 

Спасибо. Ведь вопрос состоял именно в этом.Просто специальных символов очень много. И мне надо было знать какие именно нужно конвертировать.

  Ответить  
 
 автор: GeorgeIV   (26.07.2009 в 13:35)   письмо автору
 
   для: winflip   (26.07.2009 в 10:42)
 

а чем встроенная не устраивает? Имейте ввиду, что встроенные функции выполняются гораздо быстрее, чем пользовательские с тем же функционалом.
И может Вам нужна функция htmlentities():
Эта функция идентична htmlspecialchars() за исключением того, что htmlentities() преобразует все символы в соответствющие HTML сущности (для тех символов, для которых
 HTML сущности существуют). 

  Ответить  
 
 автор: Trianon   (26.07.2009 в 13:36)   письмо автору
 
   для: winflip   (26.07.2009 в 10:42)
 

Мне вот тоже крайне интересно, чем вызван запрет применения встроенной функции.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования