Метод isset возвращает false даже при наличии ключа

Я использую люмен, интегрированный с Swagger для написания API отдыха.
У меня проблема в том, что Исеть () метод php возвращает false,
даже когда ключ в массиве присутствует, упомянут мой код.

$this->setDataCenterHost(isset($aData[self::TBL_NAME.self::COL_HOST]) ? $aData[self::TBL_NAME.self::COL_HOST] : $aData[self::COL_HOST]);

это проблемное утверждение

isset($aData[self::TBL_NAME.self::COL_HOST])

когда я повторяю это так

echo $aData[self::TBL_NAME.self::COL_HOST]

это возвращается datacenter_host_name

используя то же выражение с isset внутри setDataCenterHost функция возвращает ложь.

Любая помощь высоко ценится.

Упоминается весь класс

 class DTDataCenter
{
const DATACENTER_ID     = 'id';
const DATACENTER_NAME   = 'name';
const DATACENTER_IP     = 'ping_ip_address';
const DATACENTER_HOST   = 'host_name';
const DATACENTER_ISO    = 'iso2';
const DATACENTER_LATT   = 'laitude';
const DATACENTER_LONG   = 'longitude';const COL_ID   = 'id';
const COL_NAME = 'dc_name';
const COL_IP   = 'ping_ip_address';
const COL_HOST = 'host_name';const TBL_NAME = 'datacenter_';

protected $_oId;
protected $_oName;
protected $_oHost;
protected $_oIp;/**
* DTProtocol constructor.
* @param $_oId
*/
public function __construct($aData)
{
$this->setBaiscInfo($aData);
}

/**
* @return mixed
*/
function jsonSerialize()
{
return $this->getJson();
}

/**
* @return mixed
*/
public function getJson()
{
return array(
self::DATACENTER_ID     =>$this->getDataCenterId(),
self::DATACENTER_NAME   =>$this->getDataCenterName(),
self::DATACENTER_IP     =>$this->getDataCenterIp(),
self::DATACENTER_HOST   =>$this->getDataCenterHost()
);
}

public function setBaiscInfo($aData)
{
//Helper::dumpAndDie($aData);
$this->setDataCenterId(isset($aData[self::TBL_NAME.self::COL_ID]) ? $aData[self::TBL_NAME.self::COL_ID] :$aData[self::COL_ID] );
$this->setDataCenterName(isset($aData[self::TBL_NAME.self::COL_NAME]) ? $aData[self::TBL_NAME.self::COL_NAME] : $aData[self::COL_NAME]);
$this->setDataCenterIp(isset($aData[self::TBL_NAME.self::COL_IP]) ? $aData[self::TBL_NAME.self::COL_IP] : $aData[self::COL_IP]);
$this->setDataCenterHost(isset($aData[self::TBL_NAME.self::COL_HOST]) ? $aData[self::TBL_NAME.self::COL_HOST] : $aData[self::COL_HOST]);

// Helper::dumpAndDie($aData);
}

public function setDataCenterId($iId)
{
$this->_oId = new DTInteger($iId);
}

public function setDataCenterName($sName)
{
$this->_oName = new DTString($sName);
}

public function setDataCenterIp($sIp)
{
$this->_oIp = new DTString($sIp);
}
public function setDataCenterHost($sHost)
{
$this->_oHost = new DTString($sHost);
}

public function getDataCenterId()
{
return $this->_oId;
}

public function getDataCenterName()
{
return $this->_oName;
}

public function getDataCenterIp()
{
return $this->_oIp;
}

public function getDataCenterHost()
{
return $this->_oHost;
}}

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]