¿El código PHP de un formulario debe ir en otro archivo?

Estoy empezando con PHP y lo encuentro algo confuso, después de estudiar JavaScript. Por lo menos se me ha quitado la profunda aversión que le tenía ja ja.
Mi duda es si cada script de PHP (o como se llame) debe ponerse en archivo aparte. Gracias, un saludo.
No, no tienes por qué, pero sí deberías añadir algunas condicionales para que se ejecute sólo si se envió el formulario. Un ejemplo, tienes este código:
<!DOCTYPE html>
<html>
<head>
  <title>Formulario</title>
  <meta charset="iso-8859-1">
</head>
<body>
<form method="POST" action="">
  <input type="text" name="texto"><br />
  <button type="submit">Enviar texto</button>
</form>
<br />
<?php

$texto = $_POST['texto'];
echo "Enviaste el siguiente texto en el formulario: " . $texto;

?>
</body>
</html>

Siempre que entres en la página con ese código te pondrá el texto "Enviaste el siguiente texto en el formulario: " hayas enviado algo o no. Si lo que quieres es que sólo muestre eso deberías añadir por ejemplo la condicional de que se enviara algo por el método POST:
<?php

if($_POST){ // O $_GET si el formulario se enviara por el método GET
  $texto = $_POST['texto'];
  echo "Enviaste el siguiente texto en el formulario: " . $texto;
}

?>