Hola,
 
Olvidate de visualbasic o asp, PHP es pariente de C. El if no es mas que una sentencia mas, no influye en las expresiones. Asi un = es asignacion, tanto en una linea normal, como en un if. El == es el operador de comparacion. 
En PHP son todo expresiones. Esto: 
 Código PHP:
    if ($pp='pp') { 
    
  es valido, pero significa "si el resultado de asignar 'pp' a la variable $pp es cierto". Por otro lado: 
 Código PHP:
    if ($pp=='pp') { 
    
  tambien es valido, y significa "si $pp es igual a 'pp'". 
En PHP todo son expresiones. Esto es valido: 
 Código PHP:
    $pp2=($pp=='pp'); 
    
  y significa "asignar a $pp2 el valor devuelto por la comparacion $pp=='pp'". 
En PHP son todo expresiones. 
Saludos.