在PHP中使用数组值进行计算

在PHP中使用数组值进行计算,php,arrays,loops,if-statement,Php,Arrays,Loops,If Statement,如果我有一个多维数组,如何使数组中的某些组(例如:'工资','小时')插入到某个公式中成为$x,以便它可以通过下面的ifelse语句 我使用此通用功能计算月工资: ($employees[0]['wage'])*($employees[0]['hrs'])*4 但是,我想知道如何设置第一个括号(key?$employees[\u])的格式,以便“hrs”和“wage”值下数组的每个值都经过计算,计算数组中每个员工的$x值(共9个)。我假设我会创建一个循环,但是如何填充括号才能实现呢 with

如果我有一个多维数组,如何使数组中的某些组(例如:'工资','小时')插入到某个公式中成为$x,以便它可以通过下面的ifelse语句

我使用此通用功能计算月工资:
($employees[0]['wage'])*($employees[0]['hrs'])*4
但是,我想知道如何设置第一个括号(key?
$employees[\u]
)的格式,以便“hrs”和“wage”值下数组的每个值都经过计算,计算数组中每个员工的$x值(共9个)。我假设我会创建一个循环,但是如何填充括号才能实现呢

 with monthly salary = ($employees[_]['wage']) * ($employees[_]['hrs']) * 4
 where $employees is a pre-set multidimensional array I created.

<?php 

   $x = __

    if ( $x >= 3000 ) { 
      echo "High paying"; 
     } elseif ( 2000 =< x =< 2999 ) {
        echo "Good paying";
     } else {
      echo "Low paying"; 
     } 
?>  
月薪=($employees[\]['sage'])*($employees[\\]['hrs'])*4
其中$employees是我创建的一个预设多维数组。
您应该使用此

 $x = array();

for($i=0;$i<count($x);$i++)
{
    if ( $x[$i] >= 3000 ) 
    { 
      echo "High paying"; 
    } 
    elseif ( 2000 >= $x[$i] <= 2999 ) 
    {
       echo "Good paying";
    } 
    else 
    {
      echo "Low paying"; 
     } 
}
$x=array();
对于($i=0;$i=3000)
{ 
呼应“高薪”;
} 
elseif(2000>=$x[$i]您应该使用这个

 $x = array();

for($i=0;$i<count($x);$i++)
{
    if ( $x[$i] >= 3000 ) 
    { 
      echo "High paying"; 
    } 
    elseif ( 2000 >= $x[$i] <= 2999 ) 
    {
       echo "Good paying";
    } 
    else 
    {
      echo "Low paying"; 
     } 
}
$x=array();
对于($i=0;$i=3000)
{ 
呼应“高薪”;
} 

elseif(2000>=$x[$i]假设您拥有
$employees
多维数组;在下面代码中生成,该代码为您提供薪资,并在高、低或好的情况下给出等级

这是代码

/**
 * Function to calculate salary scale is high, good, low
 * @param int $salary
 * @return string
 */
function calculateSalaryScale($salary) {
    if ($salary >= 3000) {
        $scale = "High paying";
    } else if (2000 <= $salary && $salary <= 2999 ) {
        $scale = "Good paying";
    } else {
        $scale = "Low paying";
    }

    return $scale;
}

// Assuming your employyees array is like below
$employees = array(
    array('emp_id' => 1, 'name' => 'John Doe', 'wage' => 90, 'hrs'=> 8),
    array('emp_id' => 2, 'name' => 'Lorem Ipsum', 'wage' => 150, 'hrs'=> 6),
    array('emp_id' => 3, 'name' => 'Doler amit', 'wage' => 50, 'hrs'=> 10),
);

foreach ($employees as &$employee) {
    $employee['salary'] = $employee['wage'] * $employee['hrs'] * 4;
    $employee['scale'] = calculateSalaryScale($employee['salary']);
}

echo "<pre>";
print_r($employees);
exit;

然后,您可以相应地继续使用
$employees
数组。

假设您拥有
$employees
多维数组;该数组在代码下方生成,可为您提供薪资及其等级(如果是高、低或好)

这是代码

/**
 * Function to calculate salary scale is high, good, low
 * @param int $salary
 * @return string
 */
function calculateSalaryScale($salary) {
    if ($salary >= 3000) {
        $scale = "High paying";
    } else if (2000 <= $salary && $salary <= 2999 ) {
        $scale = "Good paying";
    } else {
        $scale = "Low paying";
    }

    return $scale;
}

// Assuming your employyees array is like below
$employees = array(
    array('emp_id' => 1, 'name' => 'John Doe', 'wage' => 90, 'hrs'=> 8),
    array('emp_id' => 2, 'name' => 'Lorem Ipsum', 'wage' => 150, 'hrs'=> 6),
    array('emp_id' => 3, 'name' => 'Doler amit', 'wage' => 50, 'hrs'=> 10),
);

foreach ($employees as &$employee) {
    $employee['salary'] = $employee['wage'] * $employee['hrs'] * 4;
    $employee['scale'] = calculateSalaryScale($employee['salary']);
}

echo "<pre>";
print_r($employees);
exit;

然后,您可以相应地继续使用
$employees
数组。

我认为您只需要一个
foreach
循环来迭代
$employees
数组中的每个员工:

foreach($employees as$employees){
$x=$employee['wage']*$employee['hrs'])*4;
如果($x>=3000){
呼应“高薪”;
}埃尔塞夫(2000=
我认为您只需要一个
foreach
循环来迭代
$employees
数组中的每个员工:

foreach($employees as$employees){
$x=$employee['wage']*$employee['hrs'])*4;
如果($x>=3000){
呼应“高薪”;
}埃尔塞夫(2000=
既然我的数组中已经设置了值,那该怎么办?我不是想用这个方程创建一个数组,我是想用一个集合数组中已有的值进行计算,并将它们放入文本中提到的方程中。@kari这只是建议您可以使用数组。如果您同意,请检查逻辑,然后单击绿色接受答案button@kari他正在使用你的阵列,在阵列中循环
$x
是您的数组,
$i
是您的索引指针,它准确地告诉您正在使用的值。这与构建一个新的数组无关。哦,这更有意义。对不起,我是新手,没问题。这就是为什么我通常反对只使用代码的答案。对于为什么所讨论的代码是一种有效的方法,我们应该给出一个最低限度的解释。既然我的数组中已经设置了值,那该怎么办呢?我不是想用这个方程创建一个数组,我是想用一个集合数组中已有的值进行计算,并将它们放入文本中提到的方程中。@kari这只是建议您可以使用数组。如果您同意,请检查逻辑,然后单击绿色接受答案button@kari他正在使用你的阵列,在阵列中循环
$x
是您的数组,
$i
是您的索引指针,它准确地告诉您正在使用的值。这与构建一个新的数组无关。哦,这更有意义。对不起,我是新手,没问题。这就是为什么我通常反对只使用代码的答案。对于为什么所讨论的代码是一种有效的方法,人们应该总是留下一个最小的解释。