簡體   English   中英

PHP從數組中獲取單個值

[英]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 Ba​​ker在評論中建議的那樣研究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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM