晚上好。我正在制作一个 IRC 机器人,当你提到他时会做出回应。我想知道的是,当有人真正说出他的名字时,如何让他回复。这是我到目前为止所拥有的($match[3] 是有人在频道上说的消息,是的,stripos 是因为我希望它不区分大小写):
if (stripos($match[3], "ircBot") !== false) {
$isMentioned = true;
}else { $isMentioned = false; }
虽然这实际上可以检测是否有人说出了他的名字,但它仅在消息的开头提到他时才有效,例如:
- "ircBot is at the beginning of this sentence" 将使 $isMentioned 为真
- “这句话之间有 ircBot”会使 $isMentioned 错误
- “在这句话的结尾是 ircBot”将使 $isMentioned 为假
如果“ircBot”在 $match[3] 内的任何地方,而不仅仅是开始,我希望它返回 true