PHP-get对象中的数组

PHP-get对象中的数组,php,arrays,object,foreach,Php,Arrays,Object,Foreach,我将以下对象显示为Json对象: Vtiger_RequestObject([ valuemap: Vtiger_Request: private ]=>Array([ __vtrftk ]=>sid: 172e53bdd05f5ef334859018d08043fb563b23b9, 1468335904[ picklistDependency ]=>[ ][ module ]=>Calendar[ action ]=>SaveAjax[

我将以下对象显示为Json对象:

Vtiger_RequestObject([
  valuemap: Vtiger_Request: private
]=>Array([
  __vtrftk
]=>sid: 172e53bdd05f5ef334859018d08043fb563b23b9,
1468335904[
  picklistDependency
]=>[

][
  module
]=>Calendar[
  action
]=>SaveAjax[
  defaultCallDuration
]=>5[
  defaultOtherEventDuration
]=>5[
  userChangedEndDateTime
]=>0[
  subject
]=>jhala12345tst[
  assigned_user_id
]=>1[
  date_start
]=>12-07-2016[
  time_start
]=>05: 05PM[
  due_date
]=>12-07-2016[
  time_end
]=>05: 10PM[
  eventstatus
]=>Dovoláno[
  activitytype
]=>Call[
  cf_1181
]=>Odchozí[
  followup_date_start
]=>[
  followup_time_start
]=>[
  popupReferenceModule
]=>Potentials[
  contact_id
]=>[
  contact_id_display
]=>[
  relatedContactInfo
]=>[
  parent_id
]=>[
  parent_id_display
]=>)[
  rawvaluemap: Vtiger_Request: private
]=>Array([
  __vtrftk
]=>sid: 172e53bdd05f5ef334859018d08043fb563b23b9,
1468335904[
  picklistDependency
]=>[

][
  module
]=>Calendar[
  action
]=>SaveAjax[
  defaultCallDuration
]=>5[
  defaultOtherEventDuration
]=>5[
  userChangedEndDateTime
]=>0[
  subject
]=>jhala12345tst[
  assigned_user_id
]=>1[
  date_start
]=>12-07-2016[
  time_start
]=>05: 05PM[
  due_date
]=>12-07-2016[
  time_end
]=>05: 10PM[
  eventstatus
]=>Dovoláno[
  activitytype
]=>Call[
  cf_1181
]=>Odchozí[
  followup_date_start
]=>[
  followup_time_start
]=>[
  popupReferenceModule
]=>Potentials[
  contact_id
]=>[
  contact_id_display
]=>[
  relatedContactInfo
]=>[
  parent_id
]=>[
  parent_id_display
]=>)[
  defaultmap: Vtiger_Request: private
]=>Array())
我想用foreach探索数组,用
array\u key\u exists()
搜索
[cf\u 1181]=>Odchozí
。可能吗


我怎么能意识到这一点?

您不能更改创建此对象的类吗? 简单的方法-将getter添加到类中,但如果不能更改类,则可以使用反射api但它很慢

$reflectionClass = new ReflectionClass('Vtiger_Request');
$reflectionProperty = $reflectionClass->getProperty('valuemap');
$reflectionProperty->setAccessible(true);
var_dump($reflectionProperty->getValue($obj)); // TODO $obj - is you object

仅适用于vtiger,这适用于7.x版
您可以通过
Vtiger\u请求
方法获取所有数据:

getall()

差不多

$data_all_data = $request->getAll();


由于您在正确设置问题格式方面所做的努力非常少,所以这里给出了一个简单的答案:是的,这是可能的。Sry,有人编辑了我的帖子,并将描述更改为json对象。我必须将什么定义为对象?如果我定义
$obj='cf_1181'例如,它不工作…$obj-必须有Vtiger_请求的实例。您编写“我有这个对象:Vtiger_请求”-在我的示例中这是变量$obj OK,我测试
$obj='Vtiger_请求'而且它也不起作用,而且php不会打印任何错误。请阅读我之前的评论$obj-必须是类Vtiger_请求的实例。不是绳子。如何在问题中显示对象?这个对象有变量吗$obj=变量转储中的变量…当我在代码中使用您的
$reflectionProperty=$reflectionClass->getProperty('valuemap'),打印或停止工作。我的代码
$data_all_data = $request->getAll();
 $data_by_key = $request->get($key);