PHP Tech Talk. Presented By: Jignasha Vithalani

Similar documents
PHP. Introduction. Significance. Discussion I. What Is PHP?

PHP web serving study Performance report

HTML Basics(w3schools.com, 2013)

LAMP [Linux. Apache. MySQL. PHP] Industrial Implementations Module Description

OVERVIEW OF ASP. What is ASP. Why ASP

Seamless Web Data Entry for SAS Applications D.J. Penix, Pinnacle Solutions, Indianapolis, IN

Welcome to Apache the number one Web server in

INTRODUCTION TO WEB TECHNOLOGY

Content Management Software Drupal : Open Source Software to create library website

LAMP Server A Brief Overview

Web Development News, Tips and Tutorials

Abdullah Radwan. Target Job. Work Experience (9 Years)

Pemrograman Web. 1. Pengenalan Web Server. M. Udin Harun Al Rasyid, S.Kom, Ph.D

Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues

Short notes on webpage programming languages

Detailed Revision History: Advanced Internet System Management (v5.07)

CrownPeak Playbook CrownPeak Hosting with PHP

1Intro. Apache is an open source HTTP web server for Unix, Apache

What will be supplied with chemoventory package?

PHP Debugging. Draft: March 19, Christopher Vickery

There are no complicated features to install - just one click of the mouse and the feature you want is automatically installed for you!

Web Hosting Control Panel

Installation of PHP, MariaDB, and Apache

PHP on IBM i: What s New with Zend Server 5 for IBM i

How to use PDFlib products with PHP

APACHE. Presentation by: Lilian Thairu

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Linux versus Windows Hosting Plus complete list of features from CompuTech

Trollhättan, Sweden

User Guide Zend Server Community 4.0.3

Web Hosting Control Panel

Build it with Drupal 8

PHP ON WINDOWS THE PROS AND CONS OF IMPLEMENTING PHP IN A WINDOWS INFRASTRUCTURE

Web Hosting Control Panel

Dinsol.In. Best Hosting Services in Delhi/NCR

Apache Usage. Apache is used to serve static and dynamic content

Installation Instructions

How does Drupal 7 Work? Tess Flynn, KDØPQK

IT3504: Web Development Techniques (Optional)

E-Commerce: Designing And Creating An Online Store

Aggregation using IMAP, PHP & MySQL Database

PHP Skills and Techniques

Document Freedom Workshop DFW 2012: CMS, Moodle and Web Publishing

Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON

Performance Evaluation of PHP Frameworks (CakePHP and CodeIgniter) in relation to the Object-Relational Mapping, with respect to Load Testing

WordPress Optimization

Code Estimation Tools Directions for a Services Engagement

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

PHP Vulnerabilities in Web Servers

Web Hosting Features. Small Office Premium. Small Office. Basic Premium. Enterprise. Basic. General

INT322. By the end of this week you will: (1)understand the interaction between a browser, web server, web script, interpreter, and database server.

Installing Drupal on Your Local Computer

Efficiency of Web Based SAX XML Distributed Processing

4.2 Understand Microsoft ASP.NET Web Application Development

The course will be run on a Linux platform, but it is suitable for all UNIX based deployments.

ECOMMERCE SITE LIKE- GRAINGER.COM

How To Install Linux, Apache, MySQL, PHP (LAMP) stack on Ubuntu

Document History Revision Date: October 30, 2006

Web Hosting. Comprehensive, scalable solutions for hosting dynamic websites, secure web services, and enterprise applications.

Fig (1) (a) Server-side scripting with PHP. (b) Client-side scripting with JavaScript.

Mercury Users Guide Version 1.3 February 14, 2006

SIMIAN systems. Setting up a Sitellite development environment on Windows. Sitellite Content Management System

USING THE DATABASE MANAGEMENT SYSTEM OF THE FINANCIAL STATEMENTS SUBMISSION

SOSFTP Managed File Transfer

Web. Services. Web Technologies. Today. Web. Technologies. Internet WWW. Protocols TCP/IP HTTP. Apache. Next Time. Lecture # Apache.

End User Guide The guide for /ftp account owner

OpenPro ERP Software Installation Guide Talbert Ave Suite 200 Fountain Valley, CA USA Phone Fax

Backup and Restore MySQL Databases

Nginx 1 Web Server Implementation

1. When will an IP process drop a datagram? 2. When will an IP process fragment a datagram? 3. When will a TCP process drop a segment?

Firewall Builder Architecture Overview

MASTER THESIS. TITLE: Analysis and evaluation of high performance web servers

1. Introduction. 2. Web Application. 3. Components. 4. Common Vulnerabilities. 5. Improving security in Web applications

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip

Plesk Panel HEAnet Customer Guide

IT3503 Web Development Techniques (Optional)

by Pearson Education, Inc. All Rights Reserved.

LAMP Quickstart for Red Hat Enterprise Linux 4

Bubble Full Page Cache for Magento

Web Pages. Static Web Pages SHTML

10CS73:Web Programming

Web Application Development and Frameworks

Certified PHP/MySQL Web Developer Course

ClickCartPro Software Installation README

IGW+ Certificate. I d e a l G r o u p i n W e b. International professional web design,

UQC103S1 UFCE Systems Development. uqc103s/ufce PHP-mySQL 1

Fachgebiet Technische Informatik, Joachim Zumbrägel

Sitemap. Component for Joomla! This manual documents version 3.15.x of the Joomla! extension.

ActiveXperts Network Monitor. White Paper

Web Based Maltese Language Text to Speech Synthesiser

Week Overview. Installing Linux Linux on your Desktop Virtualization Basic Linux system administration

MPI Frequently Asked Questions

Talk Internet User Guides Controlgate Administrative User Guide

Don t promote your website; Let your website to promote you! Proposal for Website. EIndiaTech.

About us. Proximity 2015

If you are unable to look at this page in your , please click to

CTIS 256 Web Technologies II. Week # 1 Serkan GENÇ

PROFESSIONAL I.T. COURSES AND INDUSTRIAL TRAINING WITH LIVE PROJECTS

uilding a Branch Website using Wordpress

6 reasons to choose us for your web hosting

Transcription:

PHP Tech Talk Presented By: Jignasha Vithalani

What is PHP Overview: Server side scripting language Dynamic web page generation Open source (PHPLicense incompatible with GPL) Free Cross platform recursive acronym of Hypertext preprocessor which was previously Personal Home Page whose syntax borrowed mostly from Perl

What PHP can do PHP is mainly focused on server-side scripting, so you can do anything any other CGI program can do, such as collect form data, generate dynamic page content, or send and receive cookies. But PHP can do much more As HTML can be mixed with PHP scripts which will be executed on server side, It will be less overhead to output HTML like in C or Perl There are three main areas where PHP scripts are used 1) Server-side scripting You need three things to make this work. The PHP parser (CGI or server module), a web server and a web browser. You need to run the web server, with a connected PHP installation. You can access the PHP program output with a web browser, viewing the PHP page through the server

What PHP can do 2) Command line scripting You can make a PHP script to run it without any server or browser. You only need the PHP parser to use it this way. This type of usage is ideal for scripts regularly executed using cron (on *nix or Linux) or Task Scheduler (on Windows). These scripts can also be used for simple text processing tasks 3) Writing desktop applications PHP is probably not the very best language to create a desktop application with a graphical user interface, but if you know PHP very well, and would like to use some advanced PHP features in your client-side applications you can also use PHP-GTK to write such programs. You also have the ability to write cross-platform applications this way

Flexibility of PHP 1) PHP can be used on all major operating systems, including Linux, many Unix variants (including HP-UX, Solaris and OpenBSD), Microsoft Windows, Mac OS X, RISC OS, and probably others 2) PHP has also support for most of the web servers today. This includes Apache, IIS, lighttpd and many others, And this includes any web server that can utilize the FastCGI PHP binary, like lighttpd and nginx. 3) You have the choice of using procedural programming or object oriented programming (OOP), or a mixture of them both 4) With PHP you are not limited to output HTML. PHP's abilities includes outputting images, PDF files and even Flash movies (using libswf and Ming) generated on the fly. You can also output easily any text, such as XHTML and any other XML file. 5) Most significant features in PHP is its support for a wide range of database. Writing a database-enabled web page is incredibly simple using one of the database specific extensions (e.g., for mysql), or using an abstraction layer like PDO, or connect to any database supporting the Open Database Connection standard via the ODBC extension

Flexibility of PHP 1) PHP also has support for talking to other services using protocols such as LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (on Windows) and countless others. You can also open raw network sockets and interact using any other protocol. PHP has support for the WDDX complex data exchange between virtually all Web programming languages. Talking about interconnection, PHP has support for instantiation of Java objects and using them transparently as PHP objects. 2) PHP has useful text processing features, which includes the Perl compatible regular expressions (PCRE), and many extensions and tools to parse and access XML documents. PHP standardizes all of the XML extensions on the solid base of libxml2, and extends the feature set adding SimpleXML, XMLReader and XMLWriter support. 3) Availability of various extensions and modules for different features and reusable codes 4) As source code is available It can be modified according to program need and PHP can then be recompiled for generating PHP binary 5) New Extension can easily be added which can either be dynamically linked or linked with Zend engine

Popularity of PHP 6 out of 10 most popular websites of world has used PHP Website Popularity(unique visitors) Gooogle.com 1,000,000,000 Facebook.com 880,000,000 Youtube.com 800,000,000 Yahoo 590,000,000 Wikipedia.org 410,000,000 Wordpress.com 130,000,000 PHP is used by 77.8% of all the websites whose server-side programming language known 20 million web servers over world has installed PHP support Free of cost LAMP stack instead of Microsoft stack costing lots of dollars for WISC

Popularity of PHP Rapid web application development for small to medium sized websites due to lots of open source frameworks available CMS Joomla, Drupal, Moodle etc Blog Wordpress Forum PHPBB, vbulletin etc CRM SugarCRM Ecommerce Magento, Oscommerce, Zen cart etc Around 20 Advanced Object Oriented Frameworks available which uses complex design patterns and structured design which can be used for large size robust software development

How PHP Works Two ways to install PHP 1. PHP as apache module When PHP runs as an Apache module, it is compiled into the Apache code itself. This means, when an Apache process starts, PHP starts along with it. They are intrinsically linked, and PHP depends on Apache to operate. The benefit of this is that Apache tends to run very efficiently, and PHP is part of each Apache process. Furthermore, Apache configuration, particularly when using.htaccess files, can also be used to control PHP functions 2. PHP as a CGI script PHP as a CGI script means that PHP operates as an independent binary with its own processes. It is separate from Apache and can, therefore, run as another user, rather than Apache s generic user. This increases security and adds a bit of stability, at the expense of speed

How PHP Works We never start any PHP daemon or anything by our self, When we start Apache it starts PHP interpreter along itself PHP is linked to apache (Using SAPI) by mode_php.so or mode_php.dll PHP as a whole consists of 3 modules (Core PHP, Zend Engine and Extension layer) Core PHP is the module which handles the requests, file streams, error handling etc Zend engine is one which converts human readable code into machine understandable opcodes, Then It executes this general code into virtual machine Extensions are bunch of functions, classes, streams made available to PHP scripts, For example we need mysql extension to connect to mysql database using PHP While zend engine executes the generated code, the script might require access to few extensions, Then ZE passes control to extension module/layer which transfers back the control to ZE after completion of tasks. The PHP language is interpreted. The binary that lets you interpret PHP is compiled. Means PHP is compiled down to an intermediate bytecode that is then interpreted by the runtime engine

Basics of PHP 1. Readymade packages is available for windows or Mac Os named WAMP, MAMP 2. XAMPP is available for all platforms which is package of PHP, MySQL, apache, Tomcat, PhpMyadmin, Sqlite 3. LAMP requires separate configuration for all components 4. There are lots of PHP configurations which can be changed from PHP.ini file 5. PHP.ini settings can be changed in three ways Directly in php.ini file htaccess file In PHP scripts using ini_set function 6. Which parameter valid to be changed depends upon changeable flag of parameter 7. PHP_INI_ALL type can be changed from anywhere 8. PHP_INI_PERDIR can be changed from.htaccess or php.ini 9. php.ini only can be changed only in php.ini file 10. If you change parameter which is not changeable from there then It s value won t affect. Example - short_open_tag can t affect it s change if done by ini_set function

Basics of PHP 11. httpd.conf is configuration file of Apache server 12. You can change any settings related to requests to servers, configurations of Virtual hosting, Directory specific permissions, URL rewrite, Error logs settings, Adding new apache modules, Authorization etc 13. httpd.conf settings can also be changed from per directory basis by.htaccess file 14..htaccess file is apache s directory basis configration file which can do following Authorization and Authetication Rewriting URLs Blocking Error responses Cache control 15. Loosely coupled language 16. Free from declaring type of variables and don t require to define function definition before declaring it (Developer is free to pass any type of variable to function at run time) 17. Support for default function arguments

Basics of PHP 18. Provides complex data types in form of Arrays, Objects, Resources 19. Output buffering can easily be set and can clean buffer by sending contents to browser in chuck of processes or either at end of script 20. Modify HTTP response headers any parameter like sending redirect, content type, setting cookies etc 21. $_GET, $_POST, $_SESSION, $_COOKIE, $_REQUEST, $_SERVER super global variables 22. session.save_handler php.ini configuration can set where sessions will be stored on server, default is file but can be saved in Database as well 23. session.save_path used to set path on file system for storing session data 24. session_id is unique session seed and it s value is stored on cookie on client side, If cookie will be disabled on client side then it will pass it to URLs

Versions of PHP Latest PHP release is 5.4.4 PHP5 for the most part is backwards compatible with PHP4, but there are a couple key changes that might break your PHP4 script in a PHP5 Advanced OOP concepts has been added from version 5, version 4 was having limited OOP support Exceptions introduced in version 5 in PHP E_STRICT error level added in version 5 (Deprecated code usage give warning) Useful extensions like SimpleXML, DOM, XSL, PDO, Hash, Curl and lot may more has been added in version 5 onwards Xdebug powerful extension for debugging PHP and PHPUnit for automated test cases unit testing extension added from version 5 onwards