我使用TS Framework通过PHP中的Teamspeak Query读出一些数据。 但文档太可怕了!
要显示所有客户端的所有IP,我使用此代码:
foreach($ts3_VirtualServer->clientList() as $client)
{
// skip query clients
if($client["client_type"]) continue;
$clientInfo = $client->getInfo();
echo $clientInfo['connection_client_ip'] . "<br>";
}
(这不是完整的代码)
文档中哪些部分说明了getInfo()
返回的内容?
答案 0 :(得分:4)
它不在文档中,因为它是所有节点对象的抽象/概括。
正如您从TeamSpeak3_Node_Abstract::getInfo()所见:
if ($extend) {
$this->fetchNodeInfo();
}
if ($convert) {
$info = $this->nodeInfo;
foreach ($info as $key => $val) {
$key = TeamSpeak3_Helper_String::factory($key);
//...
}
return $info;
}
return $this->nodeInfo;
返回(格式化或直接)的数据为TeamSpeak3_Node_Abstract::$nodeInfo
。
Searching nodeInfo =
的GitHub repo显示了几个(子)节点如何设置其继承的nodeInfo
属性。
例如,我们有TeamSpeak3_Node_Host::fetchNodeInfo()使用TeamSpeak3服务器查询命令hostinfo
,instanceinfo
返回的属性:
protected function fetchNodeInfo() {
$info1 = $this->request("hostinfo")->toList();
$info2 = $this->request("instanceinfo")->toList();
$this->nodeInfo = array_merge($this->nodeInfo, $info1, $info2);
}
此外,例如,TeamSpeak3_Node_Server::fetchNodeInfo()使用serverinfo
命令返回的属性:
protected function fetchNodeInfo() {
$this->nodeInfo = array_merge($this->nodeInfo,
$this->request("serverinfo")->toList());
}
可以想象,一些TeamSpeak3对象具有相应的*info
命令,该命令返回该对象的属性。
您可以在TeamSpeak3服务器查询手册中查看这些命令的几个示例结果以及返回的属性。例如,serverinfo命令。
此外,在本手册的最后,您可以找到几个对象属性列表。 例如,virtual server properties。