我想通过使用mikrotik API来检索mikrotik PPPoE服务器服务名称列表,并通过选择菜单遍历所有服务名称。我自己完成了代码。代码如下:
$ctype =$this->uri->segment('3');
if($ctype=='PPP')
{
if ($this->routerosapi->connect('1.1.1.1', 'xxx', 'xxx'))
{
$this->routerosapi->write('/interface/pppoe-server/getall');
$READ = $this->routerosapi->read(false);
$mktserver= $this->routerosapi->parseResponse($READ);
$this->routerosapi->disconnect();
}
}
elseif($ctype=='HSP')
{
if ($this->routerosapi->connect('xxx', 'xxx', 'xxx'))
{
$this->routerosapi->write('/ip/hotspot/server/getall');
$READ = $this->routerosapi->read(false);
$mktserver= $this->routerosapi->parseResponse($READ);
$this->routerosapi->disconnect();
}
}
<p>
<label for="simple-required">Server</label>
<select name="server" id="server" class="full-width">
<?php foreach($mktserver as $item):?>
<option value="<?php echo $item['service-name'];?>"><?php echo $item['service-name'];?></option>
<?php endforeach;?>
</select>
</p>
我在做什么错了?
注意:
请具体说明您的答案。我不想要任何基本答案。我希望您非常仔细地阅读代码并理解它,并最终回答它。对于您的关注,我希望同时列出PPPoE和Mikrotik的热点。
答案 0 :(得分:0)
冒着给出“基本”答案的风险,请参阅以下mikrotik cli命令:
:put [/interface get [find type=pppoe-out]]
我建议在尝试在api中执行操作之前,先获取要在cli中正常工作的命令。