本文整理汇总了PHP中Device::RowToObject方法的典型用法代码示例。如果您正苦于以下问题:PHP Device::RowToObject方法的具体用法?PHP Device::RowToObject怎么用?PHP Device::RowToObject使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Device
的用法示例。
在下文中一共展示了Device::RowToObject方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: GetDeviceByWarranty
function GetDeviceByWarranty($year)
{
global $dbh;
$deviceList = array();
if ($year >= 0) {
$previous_year = $year - 1;
$selectSQL = sprintf("SELECT DeviceID, Label, Owner, WarrantyExpire, PrimaryContact FROM fac_Device WHERE (DATEDIFF(WarrantyExpire, NOW())/365)>=%d AND (DATEDIFF(WarrantyExpire, NOW())/365)<%d ORDER BY Owner, WarrantyExpire, Label;", $previous_year, $year);
foreach ($dbh->query($selectSQL) as $deviceRow) {
$deviceList[$deviceRow['DeviceID']] = Device::RowToObject($deviceRow);
}
} else {
$selectSQL = "SELECT DeviceID, Label, Owner, WarrantyExpire, PrimaryContact FROM fac_Device WHERE (DATEDIFF(NOW(), WarrantyExpire))>0 AND WarrantyExpire>'1969-12-31' ORDER BY Owner, WarrantyExpire, Label;";
foreach ($dbh->query($selectSQL) as $deviceRow) {
$deviceList[$deviceRow['DeviceID']] = Device::RowToObject($deviceRow);
}
}
return $deviceList;
}
示例2: GetDeviceByAge
function GetDeviceByAge($year)
{
global $dbh;
$deviceList = array();
if ($year <= 5) {
$previous_year = $year - 1;
$selectSQL = sprintf("SELECT DeviceID, Label, Owner, MfgDate, PrimaryContact FROM fac_Device WHERE (DATEDIFF(NOW(), (CASE WHEN MfgDate>'1969-12-31' THEN MfgDate ELSE InstallDate END))/365)<%d AND (DATEDIFF(NOW(), (CASE WHEN MfgDate>'1969-12-31' THEN MfgDate ELSE InstallDate END))/365)>=%d ORDER BY Owner, MfgDate ASC, Label", $year, $previous_year);
foreach ($dbh->query($selectSQL) as $deviceRow) {
$deviceList[$deviceRow['DeviceID']] = Device::RowToObject($deviceRow);
}
} else {
$selectSQL = "SELECT DeviceID, Label, Owner, MfgDate, PrimaryContact FROM fac_Device WHERE (DATEDIFF(NOW(), (CASE WHEN MfgDate>'1969-12-31' THEN MfgDate ELSE InstallDate END))/365)>5 AND (CASE WHEN MfgDate>'1969-12-31' THEN MfgDate ELSE InstallDate END)>'1970-01-01' ORDER BY Owner, MfgDate ASC, Label";
foreach ($dbh->query($selectSQL) as $deviceRow) {
$deviceList[$deviceRow['DeviceID']] = Device::RowToObject($deviceRow);
}
}
return $deviceList;
}
示例3: getPatchCandidates
static function getPatchCandidates($DeviceID, $PortNum = null, $listports = null, $patchpanels = null, $scopelimit = null)
{
/*
* $DeviceID = ID of the device that you are wanting to make a connection from
* $PortNum(optional) = Port Number on the device you are wanting to connect,
* mandatory if media enforcing is on
* $listports(optional) = Any value will trigger this to kick back a list of
* valid points that this port can connect to instead of the default list
* of valid devices that it can connect to.
*/
global $dbh;
global $config;
global $person;
$dev = new Device();
// make sure we have a real device first
$dev->DeviceID = $DeviceID;
if (!$dev->GetDevice()) {
return false;
}
$mediaenforce = "";
if ($config->ParameterArray["MediaEnforce"] == 'enabled' && !is_null($PortNum)) {
$dp = new DevicePorts();
$dp->DeviceID = $DeviceID;
$dp->PortNumber = $PortNum;
$dp->getPort();
$mt = new MediaTypes();
$mt->MediaID = $dp->MediaID;
$mt->GetType();
$mediaenforce = " AND MediaID={$mt->MediaID}";
} elseif ($config->ParameterArray["MediaEnforce"] == 'enabled' && is_null($PortNum)) {
// Media Type Enforcing is enabled and you didn't supply a port to match type on
return false;
}
$limiter = '';
if (!is_null($scopelimit)) {
$cab = new Cabinet();
$cab->CabinetID = $dev->Cabinet;
$cab->GetCabinet();
switch ($scopelimit) {
case 'cabinet':
$limiter = " AND Cabinet={$dev->Cabinet}";
break;
case 'row':
$limiter = " AND Cabinet IN (SELECT CabinetID FROM fac_Cabinet WHERE CabRowID={$cab->CabRowID} AND CabRowID>0)";
break;
case 'zone':
$limiter = " AND Cabinet IN (SELECT CabinetID FROM fac_Cabinet WHERE ZoneID={$cab->ZoneID} AND ZoneID>0)";
break;
case 'datacenter':
$limiter = " AND Cabinet IN (SELECT CabinetID FROM fac_Cabinet WHERE DataCenterID={$cab->DataCenterID})";
break;
default:
break;
}
}
$pp = "";
if (!is_null($patchpanels)) {
$pp = ' AND DeviceType="Patch Panel"';
}
$candidates = array();
if (is_null($listports)) {
$currentperson = $person;
if (!$currentperson->WriteAccess) {
$groups = $currentperson->isMemberOf();
// list of groups the current user is member of
$rights = null;
foreach ($groups as $index => $DeptID) {
if (is_null($rights)) {
$rights = "Owner={$DeptID}";
} else {
$rights .= " OR Owner={$DeptID}";
}
}
$rights = is_null($rights) ? null : " AND ({$rights})";
} else {
$rights = null;
}
$cabinetID = $dev->GetDeviceCabinetID();
$sqlSameCabDevice = "SELECT * FROM fac_Device WHERE Ports>0 AND \r\n\t\t\t\tCabinet={$cabinetID} {$rights}{$pp}{$limiter} GROUP BY DeviceID ORDER BY Position \r\n\t\t\t\tDESC, Label ASC;";
$sqlDiffCabDevice = "SELECT * FROM fac_Device WHERE Ports>0 AND \r\n\t\t\t\tCabinet!={$cabinetID} {$rights}{$pp}{$limiter} GROUP BY DeviceID ORDER BY Label ASC;";
foreach (array($sqlSameCabDevice, $sqlDiffCabDevice) as $sql) {
foreach ($dbh->query($sql) as $row) {
// false to skip rights check we filtered using sql above
$tmpDev = Device::RowToObject($row, false);
$candidates[] = array("DeviceID" => $tmpDev->DeviceID, "Label" => $tmpDev->Label, "CabinetID" => $tmpDev->Cabinet);
}
}
} else {
$sql = "SELECT a.*, b.Cabinet as CabinetID FROM fac_Ports a, fac_Device b WHERE \r\n\t\t\t\tPorts>0 AND Cabinet>-1 AND a.DeviceID=b.DeviceID AND \r\n\t\t\t\ta.DeviceID!={$dev->DeviceID} AND ConnectedDeviceID IS NULL{$mediaenforce}{$pp};";
foreach ($dbh->query($sql) as $row) {
$candidates[] = array("DeviceID" => $row["DeviceID"], "Label" => $row["Label"], "CabinetID" => $row["CabinetID"]);
}
}
return $candidates;
}
示例4: GetMissingMfgDates
function GetMissingMfgDates()
{
$this->MakeSafe();
$sql = "SELECT a.* FROM fac_Device a, fac_DeviceTemplate b WHERE\n\t\t\ta.TemplateID=b.TemplateID AND b.ManufacturerID={$this->ManufacturerID} AND \n\t\t\ta.MfgDate<'1970-01-01'";
$devList = array();
foreach ($this->query($sql) as $row) {
$devList[] = Device::RowToObject($row);
}
$this->MakeDisplay();
return $devList;
}