Presentation on theme: "PHP Reusing Code and Writing Functions 1. Reusing Code. Functions. Topics: Code inclusion using require() and include() Defining functions Managing function."— Presentation transcript:
PHP Reusing Code and Writing Functions 1
Reusing Code. Functions. Topics: Code inclusion using require() and include() Defining functions Managing function parameters Passing-by-reference vs. passing-by-value Parameters default values Variable-length parameter lists Understanding variable scope in functions Using functions to return values Using recursive functions Anonymous functions 2
… has a favorable impact on program development: Allows program to be divided into logical pieces: Level of difficulty grows with the size and complexity of a program Divide work among programmers Easier to debug when modules are tested alone fully first, then integrated systematically Easier to read, especially when commented correctly. Easier to modify, isolating modules to change Allows for reuse (avoiding redundant code); when an algorithm or computation is done over and over, it can be put in a method. 4 Modularity - why?
PHP allows to reuse any type of code (not only functions, classes): Can insert code from a file into your PHP script with include (‘filename’); require (‘filename’); Statements include() & require() are similar, except when they fail: include() construct just gives a warning if failing to include file require() construct gives a fatal error, that will cause program to terminate Can also use variations include_once() or require_once() to avoid problems with redundancy; ex. redefining same function Slower than include()/require() 5 Code Inclusion
The files loaded using include / require can contain everything that is normally used in a PHP file: PHP statements, PHP functions, PHP classes, HTML code, client-side scripting PHP code still has to be placed within PHP tags Filename extensions: When include()/require() is used in a PHP script: the loaded file becomes part of the PHP script and is executed as such → as if the loaded file’s contents replaced the include()/require() statement PHP does not look at the filename extension of an included file include files can have any extension, if not to be used directly. Usually:.php or.inc (note: if located in the web document tree, their content can be seen in clear!) 7 Code Inclusion
The include files can be dynamic and generate on-the-fly parts of the page Apache or PHP can be configured to automatically load specific pages / files before and after every page, even for individual directories (applications) include() statements not needed in this case Not on cscdb… 10 Code Inclusion