mixed findVendor (
string $getDescription
= = false
, string $macList
= = null
)
このメソッドは、 setMac() でクラスに保存した MAC アドレスにマッチするベンダーを、 データベースから探します。$macList パラメータを設定すると、 このメソッドはデータベースの代わりにその配列を使用して MAC アドレスのベンダーを探します。この配列は、 importVendors() メソッドで $doReturn パラメータを使用した場合に返される配列と同じ形式でなければなりません。
string $getDescription
TRUE を指定すると、返り値は 'vendor'
と 'description' というキーを持つ配列となります。
通常は、このメソッドは単にベンダー名のみを返します。
string $macList
MAC とベンダーの一覧を表すリストで、データベースの代わりに使用します。
mixed - $getDescription が TRUE の場合に連想配列、 $getDescription が FALSE の場合にベンダ名の文字列を返します。 MAC のベンダーが見つからなかった場合は、FALSE を返します。
This function can not be called statically.
findVendor() の使用法
<?php
require_once 'Net/MAC.php';
require_once 'MDB2.php';
$db_type = 'pgsql';
$db_host = 'localhost';
$db_user = 'username';
$db_name = 'dbname';
$db_pass = 'password';
$dsn = "$db_type://$db_user:$db_pass@$db_host/$db_name";
$dbh =& MDB2::factory($dsn);
if (MDB2::isError($dbh)) {
echo "MDB2 Error: ".$dbh->getUserInfo();
}
$dboptions = array('tablename' => 'macvendors',
'macaddrcol' => 'macaddr',
'vendorcol' => 'vendor',
'desccol' => 'description');
try {
$nmh =& new Net_MAC($dbh, $dboptions);
} catch (Net_MAC_Exception $e) {
echo 'Net_MAC Error: ' . $e->getMessage();
exit;
}
$nmh->setMAC('00:11:22:33:44:55');
$result = $nmh->findVendor(true);
if (is_array($result)) {
foreach($result as $key => $value) {
echo "$key: $value<br>\n";
}
}
else {
echo $result;
}
?>
この例の出力は、次のようになります。
vendor: Cimsys description: CIMSYS Inc