PHP is probably the most widely used language in implementing dynamic web sites and applications. It is light weight but used to implement simple as well as complex web based systems. This training on PHP covers the basics as well as the advanced features of PHP. It also goes into covering some useful libraries, frameworks, tools and best practices in implementing database driven web sites and applications.
At the end of the training, participants will be able to
- Write MVC architecture based PHP applications and web sites.
- Use object oriented programming features of PHP.
- Use MySQL database to maintain data of the application.
- Use the powerful Propel framework as an object oriented database abstraction layer.
- Work with Pear library.
- Develop and debug PHP applications (with Eclipse PDT and XDebugger).
- Implement session tracking features.
- Implement security in web applications/sites.
- Generate PDF files dynamically using PHP.
- Those who want to develop database driven web based applications or web sites with PHP (Students, software developers,...).
- You should be familiar with using computers. You need not possess programming skills.
- Familiarity with HTML and CSS will be an added advantage. But the training does not assume you are experienced with them.
3 days (~24 hours)
Kamal Wickramanayake (Profile)
- This training is done with hands-on lab exercises.
PHP - Basics
- Anatomy of a PHP page
- PHP request processing mechanism
- General programming with PHP (data types, variables, expressions, operators, functions, flow control)
- Object oriented coding with PHP
- Include path
- Handling form submissions
- Working with url parameters
PHP - Intermediate
- Theme based web site implementation
- Handling file uploads
- Working with cookies
- Session tracking
- Database connectivity (MySQL)
- Sending emails
PHP - Advanced
- Regular expressions
- System process execution
- passthru functions
- Output buffering
- Using Pear library (e.g. Sending emails with attachments)
- Memory usage adjustment
- Script execution time adjustment
- Error display configuration
- Configuring XDebugger (for Debugging in Eclipse PDT)
PHP - Security
- HTTP Basic authentication
- Form based authentication
- Password hashing (MD5)
- PHP execution modes and implications
- Access restriction with .htaccess (Apache web server specific)
- SQL injection and prevention
- Cross site scripting (XSS) and prevention
- Cross site request forgery (CSRF) and prevention
- Secure coding practices
PHP - Other Topics
- Using Propel persistence framework (Propel is a Pear library)
- MVC (Model-Veiw-Controller) implementation of web applications
- Using Eclipse PDT as the development environment
- PDF generation