[英]Php Get single value from array
我有一個像$data= $regression->getCoefficients();
這樣的變量$data= $regression->getCoefficients();
在回歸分析中。 當我打印這個我得到這個輸出
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
先感謝您
您應該像Mark Baker在評論中建議的那樣研究Regression \\ Matrix方法:應該有一些方法公開受保護的MainMatrix成員。
如果沒有任何...貌似對象可以被類型強制轉換成(關聯)陣列和保護成員有前綴鍵chr(0).'*'.chr(0)
見@ fardelian的評論在這里 )。 這可能會違反Regression \\ Matrix設計,但是您可以編寫一個“暴露者”:
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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.