如何从RestRequest Object获取request_vars ..我想要一个数组中的所有字段.Below是提到的代码
RestRequest Object
(
[request_vars:RestRequest:private] => Array
(
[{
"taskStmt":"demoo",
"description":"",
"projectId":"",
"assignedDate":"",
"endDate":"",
"TaskEffort":"",
"estimateTime":"",
"dependencies":_"",
"priority":"",
"timeTaken":"",
"workCompletion":"",
"status":"",
"user_id":"",
"mailsent":"",
"completiondate":""
}
] =>
)
[data:RestRequest:private] =>
[http_accept:RestRequest:private] => json
[method:RestRequest:private] => put
)
答案 0 :(得分:2)
根据您的转储, request_vars 是一个私有且非静态的属性。
所以你需要一个像这样的getter方法:
class RestRequest
{
// ...
public function getRequestVars()
{
return $this->request_vars;
}
}
通过这种方式,您无法直接编辑/写入 request_vars 的值,但您可以通过 getRequestVars()公共方法阅读它:
var_dump( $object->getRequestVars() );
答案 1 :(得分:1)
您在评论中发布的示例在类getRequestVars()
上有RestRequest
方法,应返回这些值。
如果必须,您可以使用反射来查看protected
和private
等可见性修饰符,但可能不是一个好主意:
class Foo {
public $foo = 1;
protected $bar = 2;
private $baz = 3;
}
$foo = new Foo();
$reflect = new ReflectionClass($foo);
$props = $reflect->getProperties();
foreach ($props as $prop) {
$prop->setAccessible(true);
print $prop->getName().' = '.$prop->getValue($foo)."\n";
}