Although you would obviously rather that your PHP scripts always execute correctly from the start of the script to the end of the script, there are a variety of reasons why they might not. Put succinctly, these reasons are:
You've screwed up somewhere, and PHP cannot execute your code.
PHP has screwed up somewhere due to a bug, and cannot continue
Your script has taken too long to execute, and gets killed by PHP
Your script has requested more memory than PHP can allocate, and gets killed by PHP
To be brutally honest, the first situation is unequivocably the most common. This will change a little as your skill with PHP improves, but the first situation is still the most common even amongst the most veteran programmers! There is a large chunk of this book dedicated to debugging PHP code - feel free to skip ahead to start reading there if you're already fluent with the PHP basics.