Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 组合3个单独的工作脚本-用于drupal计算字段_Php_Drupal - Fatal编程技术网

Php 组合3个单独的工作脚本-用于drupal计算字段

Php 组合3个单独的工作脚本-用于drupal计算字段,php,drupal,Php,Drupal,我在drupal中使用computed字段,它使用的只是简单的PHP,唯一的问题是我对PHP不太了解 下面的3个脚本分别工作。当然,当我尝试使用不同的语法组合它们时,它们都失败了。我试图做的是从3个不同的字段集或字段集合中添加3个字段 第一 第二 第三 我尝试过将它们结合在一起,但不起作用: $price = 0; $wrapper = entity_metadata_wrapper($entity_type, $entity); $price = $wrapper->field_v

我在drupal中使用computed字段,它使用的只是简单的PHP,唯一的问题是我对PHP不太了解

下面的3个脚本分别工作。当然,当我尝试使用不同的语法组合它们时,它们都失败了。我试图做的是从3个不同的字段集或字段集合中添加3个字段

第一

第二

第三

我尝试过将它们结合在一起,但不起作用:

$price = 0;
$wrapper = entity_metadata_wrapper($entity_type, $entity);

$price = 

$wrapper->field_venue_sites_simple->field_site_fee->value() +
$wrapper->field_venue_site->field_peak_pricing->field_peak_price_saturday->value() +
$wrapper->field_venue_sites_w_catering->field_site_fee->value();

$entity_field[0]['value'] = $price;
我知道foreach通过数组循环。我不需要它循环,所以我可以把它取出来。它们都是多值字段,但我只需要它来提取一个值

我也试过这个,但也不起作用:

$wrapper = entity_metadata_wrapper($entity_type, $entity);

$collection1 = $wrapper->field_venue_sites_simple;
$collection2 = $wrapper->field_venue_site;
$collection3 = $wrapper->field_venue_sites_w_catering;


$entity_field[0]['value'] =
$collection1->field_site_fee->value()+
$collection2->field_peak_pricing->field_peak_price_saturday->value()+
$collection3->field_site_fee->value();

非常感谢您的帮助!整天都在搞这个。

只要把三个例子中不同的部分结合起来

$price = 0;
$wrapper = entity_metadata_wrapper($entity_type, $entity);
foreach($wrapper->field_venue_sites_simple as $collection) {
  $price += $collection->field_site_fee->value();
}  
foreach($wrapper->field_venue_sites_w_catering as $collection) {
  $price += $collection->field_site_fee->value(); 
}
foreach($wrapper->field_venue_site as $collection) {
  $price += $collection->field_peak_pricing->field_peak_price_saturday->value();
}

$entity_field[0]['value'] = $price;

这很有效。非常感谢。我就知道你们中的一个聪明人能在几分钟内做到!
$price = 0;
$wrapper = entity_metadata_wrapper($entity_type, $entity);

$price = 

$wrapper->field_venue_sites_simple->field_site_fee->value() +
$wrapper->field_venue_site->field_peak_pricing->field_peak_price_saturday->value() +
$wrapper->field_venue_sites_w_catering->field_site_fee->value();

$entity_field[0]['value'] = $price;
$wrapper = entity_metadata_wrapper($entity_type, $entity);

$collection1 = $wrapper->field_venue_sites_simple;
$collection2 = $wrapper->field_venue_site;
$collection3 = $wrapper->field_venue_sites_w_catering;


$entity_field[0]['value'] =
$collection1->field_site_fee->value()+
$collection2->field_peak_pricing->field_peak_price_saturday->value()+
$collection3->field_site_fee->value();
$price = 0;
$wrapper = entity_metadata_wrapper($entity_type, $entity);
foreach($wrapper->field_venue_sites_simple as $collection) {
  $price += $collection->field_site_fee->value();
}  
foreach($wrapper->field_venue_sites_w_catering as $collection) {
  $price += $collection->field_site_fee->value(); 
}
foreach($wrapper->field_venue_site as $collection) {
  $price += $collection->field_peak_pricing->field_peak_price_saturday->value();
}

$entity_field[0]['value'] = $price;