Bilangan prima adalah bilangan yang lebih dari 1 dan hanya habis dibagi oleh 1 dan dirinya sendiri. 

Contoh 

  2           3      
 /   \        /  \     ...................dst
1   2      1  3

Dalam logika program, setiap bilangan harus dievaluasi semua kemungkinan faktor pembaginya. 

   2           3            4                5
 /   \        / | \         / / \ \         /  /  | \  \    .................dst
1   2      1 2 3      1 2 3 4     1 2 3 4 5  

Perhatikan angka yang hijau dan merah  , angka yang tepat mempunyai 2 warna hijau itulah bilangan Prima ( Sesuai syarat bilangan prima : habis dibagi oleh 1 dan dirinya sendiri) .

Dari contoh diatas , setiap bilangan dievaluasi semua faktor pembaginya, jadi kalo dengan PHP akan perlu 2 looping (nested)

Loop #1 sebagai angka yg akan dicek apakah prima atau bukan
Loop #2 semua angka kemungkinan faktor pembagi dari angka yg akan dicek

Contoh , jika angka yang akan di cek adalah 5 , maka kita harus cek faktor pembagi nya mulai dari 1-5 ( 1,2,3,4,5)

PHP 

function prima($n){
  
      for($i=1;$i<=$n;$i++){  //smw angka yg akan di cek
              
              $counter = 0              for($j=1;$j<=$i;$j++){ //smw kemungkinan faktor pembagi
                  
                    //jika angka yg akan dicek habis dibagi faktor pembagi, counter nya +1
                    if($i % $j==0){ 
                        
                          $counter++;
                    }
              }
            
           //jumlah warna hijau / faktor habis bagi nya harus 2 
            if($counter==2){
                 
                   print $i." is Prime 
";
            }
     }
prima(20);  //cari bilang prima dari 1-20



Output kode diatas adalah :
2 is Prime 
3 is Prime 
5 is Prime 
7 is Prime 
11 is Prime 
13 is Prime 
17 is Prime 
19 is Prime 

NB : cara diatas sebenarnya kurang optimal untuk angka yang besar, ada cara lain disini Mencari Bilangan Prima,Fibonaci Dan Faktorial Dengan Bahasa C


Thanks