Php|Architect the Magazine for PHP Professionals Writing Secure PHP Code Make Your Applications Safer
Total Page:16
File Type:pdf, Size:1020Kb
JANUARY 2003 - Volume II - Issue 1 php|architect The Magazine For PHP Professionals Writing Secure PHP Code Make your applications safer IonCube PHP Accelerator 1.3.3 Reviewed for you: CodeCharge Studio 1.0 Exclusive ZEND Interview Plus: Using the .NET Assembly with PHP Writing A Web-based PDF Viewer Taming Full-Text Search with MySQL This copy is registered to: Jakob Breivik Grimstveit Accessing the Windows API and Other DLLs [email protected] Implementing Database Persistence Layers The designers of PHP offerfer youyou thethe fullfull spectrumspectrum ofof PHPPHP solutionssolutions Serve More. With Less. Zend Performance Suite Reliable Performance Management for PHP Visit www.zend.com for evaluation version and ROI calculator Technologies Ltd. TABLE OF CONTENTS php|architect Departments Features 10 | Implementing Database 4 | EDITORIAL RANTS Persistence Layers in PHP by Shawn Bedard 5 | NEW STUFF 19 | Accessing the Windows API and other Dynamic Link Libraries X 6 | PHP-WIN by David Jorm CodeCharge Studio 1.0 30 | Taming Full-Text Search with E MySQL 58 | REVIEWS by Leon Vismer EX D C ionCube PHP Accelerator LU 37 | The Zend of Computer SI VE Programming: Small Business N Heaven 68 | TIPS & TRICKS I by Marco Tabini by John Holmes 42 | Using The .NET Assembly through COM in PHP 71 | BOOK REVIEWS by Jayesh Jain 50 | Writing Secure PHP Code 73 | exit(0); by Theo Spears Let’s Call it the Unknown Language 62 | Writing a Web-based PDF Viewer by Marco Tabini January 2003 · PHP Architect · www.phparch.com 3 EDITORIAL There is nothing like a "trial by With this issue, I think we have php|architect fire" to make or break your day. improved the quality of the top- Volume II - Issue 1 S By the time the first issue of ics we cover as well. We wish our php|a hit the virtual stands, we role in the PHP community to be January, 2003 had worked insane hours for that of helping to make our almost a straight month to beloved language an invaluable T ensure that everything was as choice for enterprise-level proj- Publisher good as we could possibly make ects, and that can only be done Marco Tabini it. Even though, as a result, we by increasing the quality of the were terribly tired, I couldn't information available out there. N sleep for two days (yes, I have Whether we succeed or not is, as Editors been committed to-and released they say, for posterity to decide, from-a mental institution since but at least we're trying! Arbi Arzoumani then, in case you were wonder- The other good news, as you Brian K. Jones Marco Tabini A ing). no doubt will have already Luckily, the results were noticed by the time you read encouraging-better than we had this, is that this issue is free. It's Graphics & Layout originally expected, to be our way to say thank you to all Arbi Arzoumani sure,and the December issue did those who have believed in us- very well. Many of you wrote us and welcome to those who are to let us know that the magazine just now getting a chance to try R Administration was better than you had expect- us out. ed in terms of content and Finally, I'm happy to say that, Emanuela Corso detail; my personal favorite was from this issue forward, Brian K. L a note found in a web forum, Jones where someone had written that joins our editorial team. After Authors they were surprised by the the December issue was out, we Arbi Arzoumani, Shawn Bedard, amount of information con- thought we had done a pretty A John W. Holmes, Jayesh Jain, David tained in php|a, as he was good job, but it became evident Jorm, Theo Spears, Marco Tabini, I expecting a ten page fanzine. that there should be at least one Leon Vismer Still, we had a few constructive person in our editorial staff for critiques sent our way, and that whom English is the first lan- was very good-it gave us guid- guage. Brian brings his excellent R ance on where we had been less technical expertise and valuable php|architect (ISSN 1705-1142) is published than brilliant and, therefore, a knowledge of the editorial twelve times a year by Marco Tabini & Associates, range of issues to fix before the process to our team, and we can Inc., P.O. Box. 3342, Markham, ON L3R 6G6, Canada. next month. only be happy to have him with Although all possible care has been placed in O As a result, you will find a us (note to Brian-you now offi- assuring the accuracy of the contents of this mag- number of changes in this issue. cially owe me a drink. Make that azine, including all associated source code, listings and figures, the publisher assumes no responsibil- First of all, we have now includ- a good one). ities with regards of use of the information con- ed internal links throughout the tained herein or in all associated material. T magazine, for those who like to Happy reading! I read it on-screen. The table of Contact Information: contents on page 3 is fully linked General mailbox: [email protected] to each of the articles, while the Editorial: [email protected] Subscriptions: [email protected] words "php|architect" at the bot- Sales & advertising: [email protected] Technical support: [email protected] D tom of each page link back to the table of contents. This should make "flipping" through Copyright © 2002-2003 Marco Tabini & the pages of the magazine easi- Associates, Inc. — All Rights Reserved E er for everyone. January 2003 · PHP Architect · www.phparch.com 4 NEW STUFF PHP 4.3 Is Out ExpertRating Launches PHP Certification Exam The new version of PHP is out. RC4 was the last step before the final release—developers have been asked to Online certification company ExpertRating has commit to the PHP CVS repository only changes that fix launched a new certification exam for PHP developers. bugs marked as “critical” in the bug tracking system, The exam takes place entirely online and consists of and thankfully only lasted a few days. forty multiple-choice ques- The PHP developers have also solved a dilemma that tions, each feature between has all but dominated the mailing lists of late—the two and eight different naming of the CLI (command-line interface) version of answers, one or more of PHP vs. the CGI executable, which is used when using which could be correct— PHP as a separate executable to run scripts through a your basic mid-term nightmare. The questions cover F web server. topics ranging from the basics of the PHP language— like operators, syntax, and typecasting—to more advanced subjects like regular expressions, sessions and mailing. F The ExpertRating exam costs $10 (US), which can be paid online through a secure credit card form. According to the ExpertRating website, the exam must be taken within a month of registering for it. U For more information, you can follow this link: http://www.expertrating.com/details.asp?examid=91. php|a T Artware Releases New PHP-based CMS S Vienna, Austria-based Artware Multimedia We Dare You announced in early December the publication of its new Content Management System based on PHP, called Constructioner Web Technology. To Be Conceived to be an inexpensive content manage- ment solution aimed primarily at non-technical users, Constructioner features a web-based WYSIWYG man- agement system, support for an arbitrary number of A Professional. W languages, and can be integrated with Dreamweaver. Subscribe to php|a Today and Win a book from Wrox Press The software is available for free download for develop- ers—there are no time limits on the trial version. A key, E which retails for $399 (US), must be obtained only when the CMS engine is used in a public website. A live sample is available at http://www.constructioner.com, where you can play with the product and also find more information about N it. php|architect The Magazine For PHP Professionals January 2003 · PHP Architect · www.phparch.com 5 PHP-WIN Reviewed For You CodeCharge Studio 1.0 N By Arbi Arzoumani I -W et me start by confessing to the fact that this was not The Cost: CodeCharge: $149 Lan easy review. To fully appreciate this product, you CodeCharge Studio: $279.95 must sit down and actually use it for a practical pur- P Requirements: pose. It's a great learning experience. In a nutshell, Windows '95/'98/ME/NT4/2000/XP CodeCharge is a powerful code generating software for 64MB RAM the web. Some of you might think "Oh no, another 20MB Hard Drive Space File Size 16.7MB code generator—run for the hills!". However, I would Download Page: H like to put CodeCharge in its own category, rather than CodeCharge just call it a code generator. To fully explore this appli- cation, I would have to include at least 30 screen shots Download limitations: The CodeCharge download is a fully functioning of its intuitive interface to configure, manage, modify, 30-day trial and publish your project. I suggest that, once you read P this review, go to their website and download the trial CodeCharge Home Page: CodeCharge copy and start using it. Let's start by covering the basic grounds. The instal- Company Background: YesSoftware Inc. develops and markets RAD (Rapid lation was straightforward. If you don't have a license, Application Development) tools. They are based in you can use the program for 30 days.