Php 如果从同一数组组的不同对象中选择了多个值,则输出数组对象值

Php 如果从同一数组组的不同对象中选择了多个值,则输出数组对象值,php,arrays,ajax,wordpress,Php,Arrays,Ajax,Wordpress,我正在为一个表单创建一个AJAX特性,该表单需要3个输入-床、浴室、频率。我希望输出是价格。因此,当用户进行输入时,它只输出我创建的数组的相应价格 PHP代码段数组: $pricing = array ( array ('frequency' => "one", 'beds' => 1 , 'baths' => 1 , 'price' => 90), array ('frequency' => "one", 'beds' => 1 , 'ba

我正在为一个表单创建一个AJAX特性,该表单需要3个输入-床、浴室、频率。我希望输出是价格。因此,当用户进行输入时,它只输出我创建的数组的相应价格

PHP代码段数组:

 $pricing = array (
    array ('frequency' => "one", 'beds' => 1 , 'baths' => 1 , 'price' => 90),
    array ('frequency' => "one", 'beds' => 1 , 'baths' => 1.5 , 'price' => 113),
    array ('frequency' => "one", 'beds' => 1 , 'baths' => 2 , 'price' => 113),
    array ('frequency' => "one", 'beds' => 2 , 'baths' => 2.5 , 'price' => 135),
    array ('frequency' => "weekly", 'beds' => 3 , 'baths' => 3 , 'price' => 135),
    array ('frequency' => "weekly", 'beds' => 3 , 'baths' => 3.5 , 'price' => 158),
    array ('frequency' => "biweekly", 'beds' => 4 , 'baths' => 4 , 'price' => 158),
    array ('frequency' => "biweekly", 'beds' => 4 , 'baths' => 4.5 , 'price' => 180),
    array ('frequency' => "monthly", 'beds' => 5 , 'baths' => 5 , 'price' => 180),
    array ('frequency' => "monthly", 'beds' => 5 , 'baths' => 5.5 , 'price' => 203),
    array ('frequency' => "monthly", 'beds' => 6 , 'baths' => 6 , 'price' => 203)
);
我设法传递输入的值,但我的函数不起作用。显然,我可以回显$selected\u frequency\u id;从我的表单中选择的值,但我无法响应价格。我的功能不正确吗?我找不到foreach循环有什么问题。请参阅下面的代码:

PHP代码延续:

function ajax_update_price() {

$selected_bed_id = $_POST['bedID'];
$selected_bath_id = $_POST['bathID'];
$selected_frequency_id = $_POST['frequencyID'];

//echo $selected_frequency_id;

    foreach( $pricing as $element ) {
        if( $element['frequency'] == $selected_frequency_id && $element['beds'] == $selected_bed_id && $element['baths'] == $selected_bath_id) {
             echo $element['price'];
             break;
    }
 } 

    wp_die(); 
}
但我有更漂亮的解决方案:

 $pricing["one"]["1"]["1"] = 90;
 $pricing["one"]["1"]["1.5"] = 113;
 $pricing["one"]["1"]["2"] = 113;
 $pricing["one"]["2"]["2.5"] = 135;
 $pricing["one"]["2"]["2.5"] = 135;
 $pricing["weekly"]["3"]["3"] = 135;
 $pricing["weekly"]["3"]["3.5"] = 158;
// and so on, i think you understand how to continue
新功能将是:

function ajax_update_price() {
  global $_POST;


$selected_bed_id = $_POST['bedID'];
$selected_bath_id = $_POST['bathID'];
$selected_frequency_id = $_POST['frequencyID'];

if ($pricing[$selected_frequency_id][$selected_bed_id][$selected_bath_id])
    print $pricing[$selected_frequency_id][$selected_bed_id][$selected_bath_id]

  wp_die(); 
}

这与JavaScript有什么关系?谢谢!我要试试这个!对不起,新手。我完全照搬了你的第一个建议,但仍然不起作用。我还复制了你的第二个建议,删除了我原来的数组,但仍然无法工作。
function ajax_update_price() {
  global $_POST;


$selected_bed_id = $_POST['bedID'];
$selected_bath_id = $_POST['bathID'];
$selected_frequency_id = $_POST['frequencyID'];

if ($pricing[$selected_frequency_id][$selected_bed_id][$selected_bath_id])
    print $pricing[$selected_frequency_id][$selected_bed_id][$selected_bath_id]

  wp_die(); 
}