Начнем с логики. Как и во всех языках программирования, логика по большей степени применима к булеанам (утверждение правдивости или лживости утверждения). Ниже приведен стандартный код частного случая:
if(<boolean expression>) 
{
   pass logic
}
else 
{
   alternative logic
}То есть если выполняется определенное условие (логика) то происходит одно действие. Если утверждение не является истинным, то предусматривается иной вариант исхода  операции.
На практике можно применить данные знания в самых простых ситуациях. Пример:
// Переменная, контролирующая включен ли источник света
$lightsShouldBeOn = true;
// Условие проверки наличия света
if($lightsShouldBeOn)
{
   // Свет должен быть. Источник включается
   turnOnLights();
   echo("Lights have been turned on");
}
else
{
   // Света быть не должно. Долой источник ))
   turnOffLights();
   echo("Lights have been turned off");
}switch
Если ваш код использует большое количество каскадов с условиями, то целесообразно применить switch. Есть 2 вида данных утверждений (statement) : цифровые(switch) и текстовые (switch$).
Приведем пример с подсчетом количества патронов:
switch($ammoCount)
{
   case 0:
      echo("Out of ammo, time to reload");
      reloadWeapon();
   case 1:
      echo("Almost out of ammo, warn user");
      lowAmmoWarning();
   case 100:
      echo("Full ammo count");
      playFullAmmoSound();
   default:
      doNothing();
}Это был пример использования для цифрового свитча 
 Теперь для тексторового:
// Print out specialties
switch($userName)
{
   case "Heather":
      echo("Sniper");
   case "Nikki":
      echo("Demolition");
   case Mich:
      echo("Meat shield");
   default:
      echo("Unknown user");
}Думаю, здесь все понятно. Если возникнут затруднения, то вы всегда можете спросить об этом в разделе данной статьи.
Циклы
Как не трудно догадаться, циклы используются для логических выражений, которые требуют частого повторения.
Пример:
for(%count = 0; %count < 3; %count++) 
{
    echo(%count);
}
OUTPUT:
0
1
2Здесь мы сначала определили переменную, которая изначально равняется нулю, затем мы установили рамки счета и в конце концов задали проведение отсчета.
Еще одна вариация на тему цикла: while loop
Данное выражение подразумевает "в то время как....."
Пример:
%countLimit = 0;
while(%countLimit <= 5)
{
   echo("Still in loop");
   %count++;
}
echo("Loop was terminated");Сначала мы говорим что переменная равна нулю, а затем В ТО ВРЕМЯ КАК переменная меньше или равна 5ти, выводим на экран фразу что цикл все еще в действии. По окончанию операции мы говорим "цикл завершен".