International PHP Conference 2005 Spring Edition
Magazines Forum Software & Support Verlag
Sessions
Information
Location

Materials

PHP & Business PHP & Databases PHP 5 PHP Internals/Extensions PHP & XML General PHP Plenary Session

Power Workshops

XML and Web services with PHP5 and PEAR

Speaker: Stephan Schmidt (1&1 Internet AG), Tobias Schlitt

With PHP5, PHP has made huge steps towards XML and web services support, and now PEAR is already following. This session will show you how easy it could be to work with XML data that uses PHP5 extensions and PEAR packages and that can be used in conjunction with or parallel to these new possibilities. After dealing with XML in general, we’ll move on to PHP5’s new SOAP extension and show how SOAP-clients can be improved using the example of Services_Google. Then we’ll continue with web service packages in PEAR that communicate with non-standard web services like del.ico.us, eBay and Amazon. At the end we’ll show you how PEAR has changed with the advent of PHP5 and how PHP5 affects the future of PEAR. PHP5 and PEAR already are XML-ready, after attending this session you’ll be, too.

Download

PHP and MySQL Best Practices

Speaker: Luke Welling (MySQL AB)

Many web programmers use PHP with MySQL. However, lots of hard working programmers work to tight deadlines, are self-taught, and may never have experimented with some of this combination's newer features.In this session we will look at best practices for using MySQL from PHP. We want to show how common web development tasks can be made easier, more efficient or more secure. We will discuss when and how to use the following features in the web environment:

  • Different storage engines
  • The MySQL query cache
  • Prepared statements for efficiency and protection against SQL injection attacks
  • Transactions
  • Full text searching
  • Subqueries

This tutorial is aimed at programmers who already use PHP and MySQL together, but want to get more out of the pairing.

Rapid Application Development with PHP and off-the-shelf Components

Speaker: Klaus Günther, Helgi Thormar Thorbjörnsson (Frjáls Hugsun)

This workshop gives a hands-on example on how to rapidly develop applications in PHP. As a matter of fact during this workshop we will write a forum system together! Using mainly off-the-shelf components we will create a forum system that can keep up feature-wise with the best of them. The advanced features will cover internationalization, caching, encryption, spam protection, search engine friendliness, email notifications, and many more. We will see how to solve common problems as efficiently as possible like handling tree structures, user input validation and other security features. At the same time we will take this opportunity to share experiences on how to design and develop applications in PHP. Attendees are encouraged to bring along their laptops.

PHP Starter - First Steps and Projects Using PHP

Speaker: Christopher Kunz (Filoo GmbH)

During the PHP starter day, PHP newbies and advanced PHP users alike will learn some top-notch new techniques and industry practices in PHP, enabling them to take the fullest advantage of all the other sessions during the PHP Conference. The six-hour workshop will cover a broad scale of topics and provide everyone with hands-on examples for most of the important technologies in PHP 5.

After a quick roundup of PHP IDEs and the installation of PHP on an Apache web server, our expert will show you how to keep your PHP projects together and code cleanly, adhering to the PEAR coding guidelines. Object oriented PHP will be up next, showing off some of the nice new features in PHP 5. Be it iterators, exceptions or general OO, you will learn why everyone and their mother is excited about the new object model.

Another topic that has seen lots of change is the XML integration in PHP 5 – we will cover the SimpleXML extension and XPath for manipulation and creation of XML documents. Some basic SOAP and WSDL is a “must” too -- you will see why WSDL is becoming the method of choice for remote procedure calls.

To complete a day full of PHP, we will delve into database abstraction and the never-ending story of templating - both can be useful, but don't necessarily have to be. We will empower you to decide if you need it or not. Other topics of the session will include fun stuff to do with PHP, like graphics or Flash creation, and an introduction in PEAR packages.

Download Part1

Download Part2

Sessions - PHP & Business

PHP 5 - The Perfect Enterprise Integration Platform

Speaker: Zeev Suraski (Zend Technologies LTD)

In addition to its brand new Object Oriented model, PHP5 marks a giant leap in terms of its ability to integrate with enterprise technologies such as Java, .NET and Web Services. The presentation will describe the new functionality in PHP5, and how it can be used to build hybrid Web applications.

Download

Framing the Frameworks: What Are They and Do I Need One?

Speaker: Ben Ramsey

PHP-based frameworks proliferate on the Web. Everyone's created one in some form or another, and many have slapped an OSS license on their's and are offering it for mass consumption. This talk will discuss frameworks, what they are, and how they can be utilized for rapid application development to save time and money. In addition, several PHP frameworks will be explored and evaluated.

Download

Sessions - PHP & Databases

Building a PHP/MySQL Geographical Information System

Speaker: Luke Welling (MySQL AB)

Generating maps is a cool web application with many uses.MySQL 4.1 provides a number of geometric types and functions. Using these to do the backend work, you can build a web based GIS system fairly easily.Our example adds shop locations to a map and directs customers to their closest locations. We use the GD extension to create output JPEGs with a zoomable scrollable interface.

Enterprise Web Applications Over Multiple Database Servers with MySQLi

Speaker: Jerome Gagner (Name Intelligence)

My talk would share strategies and code examples that are currently being used at Name Intelligence to bring our huge Whois History/Name Server History database to the fingertips of our customers.

High Availability DB Connectivity Utilizing PHP OO Abstraction Layer

Speaker: Jennifer Goodie (Schematic)

An object oriented PHP database abstraction layer combined with MySQL replication can be leveraged to provide seamless fail-over in the event of server outage minimizing downtime. This technique is also used to load balance database queries and easily perform maintenance without incurring downtime. Application development time is decreased through code portability, and enhanced debugging output.

Writing DB2 Universal Database, Cloudscape, and Derby applications

Speaker: Dan Scott (IBM Canada)

Learn how to write and deploy robust PHP applications for IBM DB2 Universal Database, IBM Cloudscape, and Apache Derby. We start by setting up connectivity between PHP and the database under Linux and Windows, then cover performance tips and tricks for advanced SQL. Along the way we highlight any limitations or restrictions in the available PHP interfaces for DB2, Cloudscape, and Derby.

Download

Sessions - PHP 5

PHP 5 - The Year After

Speaker: Sebastian Bergmann (sebastian-bergmann.de)

The year after the release of PHP 5 brought a swing of solutions and tools ported from Java. This session gives an overview of these software packages and introduces the audience to tools like PHPDocumentor, PHPUnit, Phing, Creole, and Propel that aid in the development of object-oriented PHP applications.

Download

Migrating from PHP 4 to PHP 5

Speaker: John Coggeshall (Zend Technologies)

With the release of PHP 5 there are countless new features, almost too many for any one person to keep track of. From new database packages, better XML handling, and the new object model many questions persist about the transition from PHP 4 to PHP 5. In this talk PHP 5 core contributor John Coggeshall will guide you through both the perils of migrating from PHP 4 to 5 and the new PHP 5 features.

PEAR and PHP5

Speaker: Tobias Schlitt

PHP5 has been released stable for a while and most PHP related projects have started a migration phase. This session will give you a little introduction into the PEAR project and how to benefit from it. The focus of this session is to show what's new in PEAR for and with PHP5.

Download

PHP5 Error Handling and Exceptions

Speaker: Laura Thomson (RMIT University)

PHP5 added exceptions as a generalisable error mechanism, but you may not know how many different ways there are to control what happens when an error happens in your PHP application.As well as looking at exception handling, we will look at logging, custom handlers and triggering your own.Errors are going to happen. You need to make sure that the result is not an ugly default message.

Say hello to PHP-GTK 2

Speaker: Andrei Zmievski (Yahoo! Inc.)

PHP-GTK 2 is the new version of the popular extension that allows client side GUI programming in PHP. It incorporates the best changes from Gtk+ 2 and PHP 5. We'll cover changes, fixes, additions; how it interfaces with PHP 5; what new features and possibilities are present due to new object model; major new widgets and concepts; Deprecated widgets; and demos of new functionality.

Download

Go OO! - Real-life patterns in PHP5

Speaker: Stephan Schmidt (1&1 Internet AG)

This session will show examples of real-life projects that make use of design patterns with PHP5’s new OO features. Examples include abstraction of request and response properties, decorators, simulating multiple inheritance, lazy initialization, abstracting hierarchical data structures with iterators, intercepting filters, and a lot of other patterns that are extremely useful in MVC-enviroments.

Download

Component and event-driven architectures in PHP5

Speaker: Stephan Schmidt (1&1 Internet AG)

This session will show you how to build component and event-driven architectures with PHP5's new OO-model that enables you to create applications that are loosely coupled using XML and easily extendible without the need to modify the core of the application. You'll see how to build a plugin-system and how to mimmick javascript's event bubbling in PHP5 for a faster time to market for new features.

Download

PHP and Unicode

Speaker: Andrei Zmievski (Yahoo! Inc.)

Up to now, PHP has provided only marginal multibyte and Unicode support. In this age of international business and globalization, the less than full Unicode functionality is unacceptable. This session covers the new Unicode support in PHP 5 that is based on the ICU library.

Download

Sessions - PHP Internals/Extensions

Generating Flash Movies with Ming

Speaker: Luke Welling (MySQL AB)

Once you stop using Flash for annoying stuff and start trying to do useful things with it, you run into the same sort of issues that you face in other web environments: How do I connect the user interface to a database? How do I store input from the user? How do I generate content in real time?As with similar questions about HTML, the answer is PHP.

Dominating the World

Speaker: Derick Rethans (eZ systems)

This session instructs on how to handle multi-lingual, multi-local and multi-charset issues with PHP. This means an introduction to Unicode and different character encodings; local issues; the use of the iconv/mbstring and translit extensions for conversions between charsets and language scripts. With the increasing globalization in online commerce, those issues should be mastered by any PHP developer.

Download

Sessions - PHP & XML

Web Services in PHP 5

Speaker: John Coggeshall (Zend Technologies)

Did you know there is a fast, effective and hot new extension for PHP users which allows quick and easy interaction with SOAP services? This SOAP extension is bundled in PHP 5, but did you know its also available to PHP 4 users? Unveil the mystery behind this powerful extension, cut through all the hype, and learn how Web services can be put to use quickly and easily in PHP.

http://talks.coggeshall.org/show.php/soap_adam

The PayPal API revisited

Speaker: Christopher Kunz (Filoo GmbH)

In the last months, PayPal Inc. has had a very successful launch in numerous European countries, attracting a total of 57 million users world-wide. PayPal offers a WSDL-based API to their seller back-end that faciliates interaction with the paying process. There is, however, very little sample code in PHP. This presentation presents a working testbed application and discusses ways to query the API.

Commercial PHP Web Services

Speaker: Laura Thomson (RMIT University)

PHP5 has very good XML and web services support, so it is time to move past simple examples that demonstrate that the concept works. In this session we will look at how you can interact with more complex web services such as Amazon's and PayPal's APIs. Real businesses are conducting real transactions through this mechanism, and some of them encourage you to do business with them.

Dynamic Duo: Combining the powers of Flash and PHP

Speaker: Christian Wenz (Hauser & Wenz), Tobias Hauser (Hauser & Wenz)

Macromedia Flash is more and more targetting experienced developers to create functional web applications. Together with PHP, there is a power combination of two technologies that unleash their full potential. This talk shows how to connect Flash with PHP, including database access, XML processing, using Web Services and Macromedia's proprietary Flash Remoting.

Download

Sessions - General PHP

Playing Safe

Speaker: Derick Rethans (eZ systems)

This session will deal with multiple ways to work securely with sensitive data. Covered methods to 'secure' information are: Using Digest Authentication, assymetric encryption for signed and encrypted data. The session will also include tips on when securing data doesn't make sense, why it is important to secure sensitive information and some of the theory that accompanies this subject.

Download

Defending against Users

Speaker: Derick Rethans (eZ systems)

This session teaches you how you can use some of PHP's unknown functionality in the form of Sapi input filters to defend your sites against XSS and SQL injections, and automatically convert your input data to the type that you expect to receive. The filters can be used to create a server-wide policy against invalid user input, but you will also see some fine-grained site-specific filters.

Download

Web Security - Part I

Speaker: Christian Wenz (Hauser & Wenz), Ben Ramsey

No week passes without a new security vulnerability. However, more often it is not a browser, server, or OS that is affected, but a web site. Most often, the same mistakes are made, paired with lazy programmers. This talk seeks to change this and covers securing a PHP-enabled website.Part I examines programming mistakes, how attackers work, and what measures can be taken to avoid traps.

Download

Web Security - Part II

Speaker: Christian Wenz (Hauser & Wenz), Ben Ramsey

No week passes without a new security vulnerability. However, more often it is not a browser, server, or OS that is affected, but a web site. Most often, the same mistakes are made, paired with lazy programmers. This talk seeks to change this and covers securing a PHP-enabled website.Part II examines security from the server-side and explores best practices for configuring PHP on the server.

Application-independant PHP security

Speaker: Christopher Kunz (Filoo GmbH)

Enterprise-Grade PHP is in the focus of attention. Unfortunately, it is also more and more targetted by black hats, increasing the risk for server administrators. Rewriting insecure applications to squash bugs is often infeasible, so application-independent security layers must be established. The session will discuss these measures, including mod_security and the Hardened-PHP patch.

PHPUnit - An Introduction to Unit Testing PHP Applications

Speaker: Sebastian Bergmann (sebastian-bergmann.de)

PHPUnit supports the development of object-oriented PHP applications using the concepts and methods of Extreme Programming, Test-Driven Development and Design-by-Contract Development by providing an elegant and robust framework for the creation, execution and analysis of Unit Tests.This session will introduce the audience with the concept of Unit Testing and familiarize it with PHPUnit.

Download

Design challenges of a high traffic PHP website

Speaker: Jeremy Johnstone (WebGroup Media, LLC.)

As the developer who wrote Hotscripts.com, the leading web script repository on the Internet, I had to overcome many challenges to having a 100% dynamic site with it's traffic level. In this talk I will teach others how to optimize site design for speed and ease of adding new features based on my own hybrid MVC pattern. I will also highlight on common security concerns and how to overcome them.

PHP in a Whole New World: Desktop Applications Built in PHP-GTK

Speaker: Ben Ramsey

For several years, PHP has dominated on the Web, becoming the leading Web scripting language. However, PHP is not only for Web use; it is a general-purpose language that can be used to create desktop applications using GTK extensions. This talk examines some of the more popular applications created using PHP-GTK, as well as providing resources for more information on creating PHP-GTK applications.

Download

Building a Speech Recognizer in PHP

Speaker: Nick Elprin, Lucas Strozek

We describe our experience developing a speech recognizer in PHP. We explain how PHP facilitates development of such complex applications, focusing on features such as high-level functions and graphics integration. We also describe PHP's limitations in the context of a large software project (e.g., poor performance on certain tasks), and how to overcome such limitations. We will perform a demo.

Download

Lies, damn lies and statistics - Making PEAR::Image_Graph work for you

Speaker: Stefan Neufeind (SpeedPartner GmbH)

PEAR::Image_Graph is a flexible and rich of features graph generation solution. With a brand new PHP5-ready architecture and driver based backend, Image_Graph offers a wide range of chart types, data types, and currently supports output in JPEG, PNG, SVG, PDF and SWF.

Download

Sessions - Plenary Session

Sharing Your Oracle Data

Speaker: Christopher Jones (Oracle Development)

PHP is a very popular platform and web-server independent scripting language used for small to mid-sized applications. PHP is beginning to be used at an enterprise level, and may need to be integrated with existing databases. This session demonstrates how PHP can (i) access Oracle databases using Web Services and (ii) interoperate with J2EE applications using JSR-223.