Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: strtr()

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: вопрос по функции
Hunter
Отправлено: 22 Декабря, 2009 - 11:32:01
Post Id



Частый гость


Покинул форум
Сообщений всего: 214
Дата рег-ции: Дек. 2009  
Откуда: Блага


Помог: 0 раз(а)




вот пример из мануала:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $trans = array("hello" => "hi", "hi" => "hello");
  4. echo strtr("hi all, I said hello", $trans);
  5. ?>
  6.  


а есть фунуция не учитывающая регистр?
 
 Top
Champion Супермодератор
Отправлено: 22 Декабря, 2009 - 11:48:01
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




str_ireplace
 
 Top
Hunter
Отправлено: 22 Декабря, 2009 - 12:19:29
Post Id



Частый гость


Покинул форум
Сообщений всего: 214
Дата рег-ции: Дек. 2009  
Откуда: Блага


Помог: 0 раз(а)




Champion
это не совсем удобно для меня, т.к. приходится вводить дополнительный цикл. strtr может использовать ассоциативный массив ключи которого использует как вхождения в строку а значения этих ключей как замену вхождений. У меня антимат выражен таким массивом сформированным из значений взятых из бд. но strtr учитывает регистр а мне бы хотелось свести число записей в БД свести к минимуму.
если использовать str_ireplace то приходится вводить дополнительный цикл (так как с таким массивом она не умеет работать) - например перебирать мой массив с помощью foreach.
в принципе я ее уже использую, просто хотел найти более компактное решение...
 
 Top
Champion Супермодератор
Отправлено: 22 Декабря, 2009 - 12:42:31
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




ну str_ireplace тоже может принимать массивы. Только там чуть по-другому: массив элементов, которые надо заменять и массив элементов, которыми надо заменять. Не сложно ведь вместо ассоциативного два таких сформировать? Или оно там много где используется у тебя?
 
 Top
Hunter
Отправлено: 22 Декабря, 2009 - 12:51:36
Post Id



Частый гость


Покинул форум
Сообщений всего: 214
Дата рег-ции: Дек. 2009  
Откуда: Блага


Помог: 0 раз(а)




Champion
все верно, в принципе я массив этот собрал из двух других, так что это несложно, просто держусь за целостность массива из за удобства))))))
впрочем я уже во всем разобрался и все переделал.
спасибо за совет)
(Добавление)
.. а использовать его планируется не в одном месте.. да неважно, он все равно предварительно собирается из двух других, которые в свою очередь формируются чтением записей из БД.
 
 Top
Вездеход
Отправлено: 22 Декабря, 2009 - 13:31:06
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 820
Дата рег-ции: Апр. 2008  
Откуда: Россия


Помог: 0 раз(а)




Hunter
есть 2 полезных в данном случае функции
array_keys
array_values

(Отредактировано автором: 22 Декабря, 2009 - 13:31:26)



-----
о великий nl2br!
Хочешь невероятных ощущений? Юзай блокнот! Блокнот - чудеса сбываются!
Чем меньше вы знаете PHP - тем ценнее мои знания!
 
 Top
Hunter
Отправлено: 22 Декабря, 2009 - 15:09:21
Post Id



Частый гость


Покинул форум
Сообщений всего: 214
Дата рег-ции: Дек. 2009  
Откуда: Блага


Помог: 0 раз(а)




Вездеход
се же в данном случае удобнее иреплейсом..
 
 Top
valenok Модератор
Отправлено: 22 Декабря, 2009 - 18:17:08
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)






-----
Truly yours, Sasha.
 
My status
 Top
Hunter
Отправлено: 24 Декабря, 2009 - 12:02:23
Post Id



Частый гость


Покинул форум
Сообщений всего: 214
Дата рег-ции: Дек. 2009  
Откуда: Блага


Помог: 0 раз(а)




valenok
я не ставлю целью искоренить мат на ресурсе)) вовсе нет.. для меня антимат лишь своеобразная фишка, позволяющая сделать выгодное отличие от других себеподобных, к тому же если сделать его с применением бд он не бкдет сильно тормозить (???) .. к тому же я не собираюсь заменять мат на банальные звездочки)) можно превратить мат в более смешную фразу.. В общем можно его сделать достаточно веселой фишкой своего ресурса... я может не совсем четко выражаю мысль, но как задумка будет воплощена в полной мере то смогу показать на деле что я имел в виду)))
а что касается живых модеров - это тоже не 100% выход)))))
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB