# PHP Program to Check Prime Number

A Prime number is a natural number greater than $1$ and divisible by $1$ and itself only, for example $- 2, 3, 5, 7,$ etc.

### Example: Using conditional statements

In the below example, the number called MyNum is checked for prime number by dividing it with all natural numbers starting from $2$ to $N-1$.

<?php
$MyNum = 17;$n = 0;
for($i = 2;$i < $MyNum;$i++)
{
if($MyNum %$i == 0){
$n++; break; } } if ($n == 0){
echo $MyNum." is a prime number."; } else { echo$MyNum." is not a prime number.";
}
?>


Output

17 is a prime number.


### Example: Using function

In the below example, a function called primenumber() is created which takes a number as argument and checks it for prime number by dividing it with all natural numbers starting from $2$ to $\frac{N}{2}$.

<?php

function primenumber($MyNum) {$n = 0;
for($i = 2;$i < ($MyNum/2+1);$i++)
{
if($MyNum %$i == 0){
$n++; break; } } if ($n == 0){
echo $MyNum." is a prime number."; } else { echo$MyNum." is not a prime number.";
}
}

?>


Output

21 is not a prime number.


### Example: Optimized Code

• Instead of checking the divisibility of given number from $2$ to $\frac{N}{2}$, it is checked till $\sqrt{N}$. For a factor larger than $\sqrt{N}$, there must the a smaller factor which is already checked in the range of $2$ to $\sqrt{N}$.
• Except from $2$ and $3$, every prime number can be represented into $6k\pm1$.

<?php

function primenumber($MyNum) {$n = 0;
if ($MyNum == 2 ||$MyNum == 3){
echo $MyNum." is a prime number."; } elseif ($MyNum % 6 == 1 || $MyNum % 6 == 5) { for($i = 2; $i*$i <= $MyNum;$i++)
{
if($MyNum %$i == 0){
$n++; break; } } if ($n == 0){
echo $MyNum." is a prime number."; } else { echo$MyNum." is not a prime number.";
}
} else {
echo \$MyNum." is not a prime number.";
}
}

?>


Output

21 is not a prime number.