2015-12-31 3 views
1

Теперь это простой и простой вопрос.Преобразование клавиатурных смайликов в пользовательские png и наоборот

Как я могу достичь этих двух вещей.

ПЕРВЫЙ

вход - эй я улыбаюсь

Выходной - hey I'm smiling <span class ="smile"></span>

и наоборот.

ВТОРОЙ

вход - эй я улыбаюсь: улыбка:

Выход - эй я улыбаюсь

Теперь я знаю слова экстракционной часть. Я просто не знаю в , какие формы клавиатурных смайликов?

Для первого.

Я знаю, что это может быть достигнуто путем проверки каждого слова и использования переключателя для проверки. Но что входит в заявления case?

Для второго

Это одно имеет такую ​​же проблему можно использовать :smile: в случае выключателя. Но что я должен заменить :smile:, чтобы получить смайлик клавиатуры?

Я знаю, что это связано с некоторыми символами юникода, но поскольку я не был уверен, что пришел сюда в надежде на решение.

P. S - Я использую php на стороне сервера.

+1

Ну, это о замене струн в обоих направлениях. PHP предлагает нормальную функцию для этого и основанную на регулярных выражениях. Взгляните на их документацию, они приходят с хорошими примерами. – arkascha

+0

Зачем вам нужна вторая функциональность? Легче всегда сохранять исходную строку и только конвертировать смайлики в HTML по мере необходимости. –

+0

Я понял второй. А что в первую очередь я до сих пор не могу решить? –

ответ

2

Пробег: str_replace.

Первое:

<?php 
$string = "hey I'm smiling "; 
echo str_replace("", "<span class =\"smile\"></span>", $string); 
?> 

Второе:

<?php 
$string = "hey I'm smiling :smile:"; 
echo str_replace(":smile:", "", $string); 
?> 
+0

Я знаю эту часть, но смайлик, который вы передали в str_replace. Я не могу найти его на своей физической клавиатуре. –

+0

Смотрите здесь: http://unicode-table.com/ru/1F601/. Это должно быть alt + 128513, но это еще одна улыбка: ☺. Не было бы проще использовать этот смайлик: _ **:) ** _? –

+0

Это не цветной на рабочем столе Chrome? Почему я получаю черно-белый смайлик? –