我希望有人这么做!耳语示例这是一个测试示例。
它会输出
$whisperuser
as"例子" &安培; $whispermessage
as"这是一个测试示例"。
<?php
if (strpos($message, '!whisper') === 0) {
$arr = explode(' ',trim($message));
$whisperuser = $arr[1];
$whispermessage = $arr[2]; // I need Whisper message to be anything arr[2] and HIGHER.
// WOULD DO OUTPUT STUFF HERE
}
?>
答案 0 :(得分:0)
您的代码可以轻松编写。在将第三个参数添加到explode之后,它会将字符串的其余部分放到最后一个项目
list( , $whisperuser, $whispermessage) = explode(' ',trim($message), 3);
答案 1 :(得分:0)
使用preg_match。 假设用户名称中没有空格
$str = '!whisper EXAMPLE this is a test example';
$matches = [];
preg_match("/!whisper\s(\w+)\s(.*)$/", $str, $matches);
if (!empty($matches[1]) && !empty($matches[2])) {
echo "Wispering to user {$matches[1]}: '{$matches[2]}'";
} else {
echo "No actions taken!";
}
IF 用户可以在名称中包含空格,但必须以某种方式指定其名称的结束位置。因为如果有用户some user new
,您的示例将无法向some user
轻声说话。