2014-12-27 4 views
1

회귀 분석에서 $data= $regression->getCoefficients();과 같은 변수가 있습니다. 내가이를 인쇄 할 때 내가이 출력PHP 배열에서 단일 값 얻기

Regression\Matrix Object ([rows:protected] => 4 [columns:protected] => 1 [MainMatrix:protected] => Array ([0] => Array ([0] => -125) [1] => Array ([0] => 9.8888888888869) [2] => Array ([0] => 18.75) [3] => Array ([0] => -1.1388888888905)))

있어하지만 난 미리 감사 Array[0]=>-125 또는

-125처럼 배열에서 단일 값을 얻을 필요가

+1

Regression \ Matrix 클래스의 메소드를 살펴 보겠습니다. 원하는 값을 얻을 수있는 방법을 제공 할 수도 있습니다 ....하지만 $ data __ 배열을 포함하고 있습니다. 배열은 아니지만 객체는 –

답변

0

당신은 회귀 \ 매트릭스 방법을 조사한다 마크 베이커 (Mark Baker)는 주석에 다음과 같이 제안했다 : 보호 된 MainMatrix 멤버를 노출시키는 방법이 있어야한다.

오브젝트가 (연관) 배열로 타입 변환 될 수 있고 보호 된 멤버가 접두사가 chr(0).'*'.chr(0) 인 키가있는 것처럼 보입니다 (@ fardelian의 설명 here 참조). 그것은 오히려 회귀 \ 매트릭스 디자인에 대한 것입니다,하지만 당신은 "노광기"쓸 수 있습니다 : (. 당신은 덜 해키에서 동일한을 달성 할 수 있지만, 더 부피가 큰 방법은 reflection 사용)

function getProtectedValue($obj,$name) { 
    $array = (array)$obj; 
    $prefix = chr(0).'*'.chr(0); 
    return $array[$prefix.$name]; 
} 

지금 원하는 값에 액세스 할 수 있습니다.

$data = $regression->getCoefficients(); 
$MainMatrix = getProtectedValue($data,"MainMatrix"); 
echo $MainMatrix[0][0]; // -125 
+0

입니다. 이 작품은 ... 고맙습니다, Jan ... – Sukumar