Joomla Framework를 사용하여 MySQL 테이블의 옵션을 표시하는 구성 요소를 만듭니다. 각 옵션에는 다양한 매개 변수가 많이 있으므로 custparams 필드에 json 배열로 설정됩니다.변수 이름을 사용하여 PHP에서 새 변수를 만드는 방법은 무엇입니까?
이 함수는 옵션 ID를 기반으로 각 옵션에서 이러한 사용자 지정 매개 변수를 추출합니다.
는JSON 데이터는 stdObject로 디코딩 및 기록됩니다
$this->_oparams->$pkey=$custom_params->pvalue;
그래서 난 모든 매개 변수를 나열 방지 할 수 있습니다
$_oparams=null;
function _custParamsOpt($pid)
{
$query='SELECT custparams FROM #__mycomponent_options'
.' WHERE id = '.(int)$pid;
$this->_db->setQuery($query);
$paramdata=$this->_db->loadResult();
if (!empty($paramdata))
{
$custom=json_decode($paramdata);
foreach ($custom as $custom_params)
{
if ($custom_params->pkey=='elemvert') $this->_oparams->elemvert=$custom_params->pvalue;
if ($custom_params->pkey=='elemhor') $this->_oparams->elemhor=$custom_params->pvalue;
if ($custom_params->pkey=='minwidth') $this->_oparams->minwidth=$custom_params->pvalue;
if ($custom_params->pkey=='maxwidth') $this->_oparams->maxwidth=$custom_params->pvalue;
if ($custom_params->pkey=='minheight') $this->_oparams->minheight=$custom_params->pvalue;
if ($custom_params->pkey=='maxheight') $this->_oparams->maxheight=$custom_params->pvalue;
}
return true;
} else {
return false;
}
}
는 가능한 한이 데이터를 쓰기? 코드에서
나중에 나는이 방법으로 매개 변수를 확인하십시오...
foreach ($custom as $custom_params)
$this->_oparams->{$custom_params->pkey} = $custom_params->pvalue;
}
...
이렇게 설명 뭔가 더에 질문의 제목을 변경하십시오
–