我正在做一个简单的基于文本的聊天游戏(PHP+Mysql)。当用户键入某些编码时,我想做一些兴趣响应/功能。
示例:我允许用户搜索帮助,他们只需#help#在聊天栏中输入并回车,然后就会弹出一个帮助中心给他们。他们也可以在不同的聊天室聊天,但是当他们键入#cAll# Hello every one并输入时,所有聊天室都可以看到Hello every one. 但是我怎么只抓住Hello every one没有的#cAll#呢?
我目前的编码如下:
$chatting = addslashes($_GET['chatting']);
preg_match("/(?<=#).*?(?=#)/", $chatting, $match);
if($match[0] == 'cAll'){
$data['ctype'] = 1;//show to all chatroom
$chatting = ???? //i would like catch the $chatting without #cAll#
}
if($match[0] == 'help'){
//my popup help coding...
}
$chatting = iconv('UTF-8',$_G['chatset'],$chatting);
$data['areaid'] = $chatroomid;
$data['ctext'] = $chatting;
C::t('#'.$jn.'#'.$jn.'_chatting')->insert($data);//my template language to insert the data to database
除此之外,如何response仅当 the #keyword#is 匹配在用户句子前面时?
例子:
仅响应#cAll# hello world或#cAll#hello world
不要回应hello world #cAll#
不要回应hello #cAll# world
慕田峪4524236