Php-mysql Course

A function that returns the lower, higher, and closest number. The function receives two parameters: an array with numbers, and the number. Compares that number with the numbers from array, than returns an associative array with three elements: the "lower", "higher", and "closest" number.
<?php
// retutrs an array with the number from $array: lower, higher and closest to $nr
function closestLowerHigherNr($array, $nr) {
  // PHP-MySQL Course - https://coursesweb.net/php-mysql/
  sort($array);      // Sorts the array from lowest to highest

  // sets the array that will be returned, initially with the lowest and highest number from $array
  $re_arr = array('lower'=>min(current($array), $nr), 'higher'=>max(end($array), $nr), 'closest'=>$nr);

  // traverse the numbers, stores in $re_arr the number immediately lower and higher than $nr
  foreach($array AS $num){
    if($nr > $num) $re_arr['lower'] = $num;
    else if($nr <= $num){
      // if the current number from $array is equal to $nr, or immediately higher, stores that number
      // and stops the foreach() loop
      $re_arr['higher'] = $num;
      break;
    }
  }

  // here it gets the closest number to $nr
  // (the number ('lower' or 'higher') with the lowest diferrence between its value and $nr)
  $re_arr['closest'] = (abs($nr - $re_arr['lower']) < abs($re_arr['higher'] - $nr)) ? $re_arr['lower'] : $re_arr['higher'];

  return $re_arr;
}

// Example
$numbers = array(-8, -3, 0, 5.8, 12, 9, 2.1);
$test1 = closestLowerHigherNr($numbers, -6);
$test2 = closestLowerHigherNr($numbers, 3);
$test3 = closestLowerHigherNr($numbers, 9);

// see the values in $test1, $test2, $test3
var_export($test1);       // array ( 'lower' => -8, 'higher' => -3, 'closest' => -8 )
var_export($test2);       // array ( 'lower' => 2.1, 'higher' => 5.8, 'closest' => 2.1 )
var_export($test3);       // array ( 'lower' => 5.8, 'higher' => 9, 'closest' => 9 )
?>
This function works also if $nr is lower, or higher than any number in $array.
Example:
<?php
// here add the closestLowerHigherNr() function

$numbers = array(-8, 2, 12);
$test4 = closestLowerHigherNr($numbers, -23);      // -23 is lower than any number in $numbers
$test5 = closestLowerHigherNr($numbers, 18);       // 18 is higher than any number in $numbers

// see the values in $test4, $test5
var_export($test4);       // array ( 'lower' => -23, 'higher' => -8, 'closest' => -23 )
var_export($test5);       // array ( 'lower' => 12, 'higher' => 18, 'closest' => 18, )
?>

Daily Test with Code Example

HTML
CSS
JavaScript
PHP-MySQL
What attribute makes a radio button or checkbox input selected?
checked="checked" selected="selected" disabled="disabled"
<input type="checkbox" name="a_name" value="value" checked="checked" />
What CSS value scales the background image to the largest size contained within the element?
repeat-x contain linear-gradient
#id {
  background:url("path_to_image.png");
  background-size:contain;
  background-repeat:no-repeat;
}
What operator is used to determine the rest of the division of two numbers?
% * /
var rest8_7 = 8 % 7;
alert(rest8_7);
Indicate the PHP function that rounds a number up to the next highest integer.
floor() ceil() abs()
$nr = ceil(3.5);
echo $nr;        // 4
Get Lower, Higher, and Closest Number

Last accessed pages

  1. A simple script ActionScript 3 (4416)
  2. Check the file type before Upload (9307)
  3. SHA1 Encrypt data in JavaScript (35501)
  4. Ajax-PHP File Manager (10274)
  5. Contact page - CoursesWeb (48922)

Popular pages this month

  1. Courses Web: PHP-MySQL JavaScript Node.js Ajax HTML CSS (70)
  2. Read Excel file data in PHP - PhpExcelReader (11)
  3. ActionScript 3 Lessons (7)
  4. The Mastery of Love (7)
  5. PHP-MySQL free course, online tutorials PHP MySQL code (6)