Well, to be a bit more charitable here, I think part of the problem (at least for require/include) is that there aren't any good real-world examples that show, not just how to use each one, and the different behavior that would result, but rather why you would need to use require() instead of a top-level (outside of any control-flow structures) include().
It's just another case of the big problem with TMTOWTDI: if you have two different ways to do something, people will search for significant differences between them. If there are none, too many of us will insist on inventing some.
:-)