Register Guidelines E-Books Today's Posts Search

Go Back   MobileRead Forums > E-Book Software > Calibre

Notices

Reply
 
Thread Tools Search this Thread
Old 09-08-2014, 09:55 PM   #1
PaneintheGlass
Member
PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.
 
Posts: 11
Karma: 56780
Join Date: Aug 2014
Device: Onyx Boox Lynx T68
Adding HTML only imports index

Hey all! I'm trying to import several HTML files into Calibre. I've created an index file that works in FF, but when I add it to Calibre, it only adds the index file and not the files linked inside it. All the linked files are on the local HDD, and as I said, I can navigate to them from the index. The ultimate goal is to create an epub, which, as far as I can tell, means I need all the HTML's to be added to the ZIP. Can you help me figure out what's wrong?
PaneintheGlass is offline   Reply With Quote
Old 09-09-2014, 08:33 AM   #2
canpolat
Connoisseur
canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.
 
Posts: 92
Karma: 17950
Join Date: Mar 2013
Device: Xodo
I'm not a Calibre super user and for this kind of a task I would rather use Sigil. Sigil is built specifically for generating ePub...

Edit: You may need to rebuild the index.html file (i.e., use find/replace to update the links to the files).

Edit2: Just add all the HTML files to Sigil and then order them if necessary (by dragging and dropping them on the left pane). Sigil creates a directory structure so that all HTML files are under a Text/ folder. So, you need to update the links to use that path instead: If the original links were like "C:\mydir\file1.html", the new location will be "..\Text\file1.html" and you can run a Find/Replace over all files that replaces "C:\mydir\" with "..\Text\".

If you also have images, those also need to be added (and they are located in a folder called Image\. You can repeat the Find/Replace for those files.

Last edited by canpolat; 09-09-2014 at 08:40 AM.
canpolat is offline   Reply With Quote
Advert
Old 09-09-2014, 08:58 AM   #3
DoctorOhh
US Navy, Retired
DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.
 
DoctorOhh's Avatar
 
Posts: 9,890
Karma: 13806776
Join Date: Feb 2009
Location: North Carolina
Device: Icarus Illumina XL HD, Kindle PaperWhite SE 11th Gen
Quote:
Originally Posted by PaneintheGlass View Post
Hey all! I'm trying to import several HTML files into Calibre. I've created an index file that works in FF, but when I add it to Calibre, it only adds the index file and not the files linked inside it. All the linked files are on the local HDD, and as I said, I can navigate to them from the index. The ultimate goal is to create an epub, which, as far as I can tell, means I need all the HTML's to be added to the ZIP. Can you help me figure out what's wrong?
If the links are local and properly link to local machine files then all files should have been added. Attach the index file (you may have to zip it first) so we can take a look at it.
DoctorOhh is offline   Reply With Quote
Old 09-09-2014, 06:45 PM   #4
PaneintheGlass
Member
PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.
 
Posts: 11
Karma: 56780
Join Date: Aug 2014
Device: Onyx Boox Lynx T68
Thanks! I'll check out Sigil. In the mean time, here's the HTML I'm using (also attached). I've tried it both with and without the 'file:\\\' (ctrl+H FTW!), and with and without the <head> tags. I have the <h1>...<p> tags in because it was in the Calibre documentation I could find, though I don't know that it's required. I figured Calibre was just looking at the href tags and didn't care about anything else. Still, stranger things have happened.

Index.html contents:

Spoiler:

<html>
<head>
<title>
Index
</title>
</head>
<body>
<h1>Table of Contents</h1>
<p style="text-indent:0pt">
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp.h tml">Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \0\0.html">Preface | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \1\0.html">Is this book for you? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \2\0.html">Who this book is not for | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \3\0.html">What you will get out of this book | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \4\0.html">How to use this book | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \5\0.html">A note for programmers coming from Perl | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \6\0.html">A note for programmers coming from C, C++, or Java | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \7\0.html">Cross-platform PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \8\0.html">Tips for success | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \9\0.html">About the Publisher | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \10\0.html">Copyright and usage rights | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \11\0.html">Give something back! | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \12\0.html">About me | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 \13\0.html">Acknowledgements | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \0\0.html">Introducing PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \1\0.html">History | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \1\1.html">Background | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \1\2.html">Early versions of PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \1\3.html">Current release | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \1\4.html">Upgrading from PHP 3 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \1\5.html">Upgrading from PHP 4 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \1\6.html">The creators of PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \1\7.html">The Zend Relationship | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \2\0.html">Advantages of PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \2\1.html">The HTML relationship | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \2\2.html">Interpreting vs. Compiling | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \2\3.html">Output Control | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \2\4.html">Performance | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \2\5.html">Competing Languages | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \2\6.html">When to use PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \2\7.html">When not to use PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \2\8.html">Selling PHP to your boss | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \3\0.html">Extending PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \4\0.html">PEAR | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \5\0.html">Running PHP scripts | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\0.html">How PHP is written | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\1.html">Whitespace | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\2.html">Escape sequences | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\3.html">Heredoc | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\4.html">Brief introduction to variable types | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\5.html">Code blocks | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\6.html">Opening and closing code islands | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\7.html">Comments | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\8.html">Conditional statements | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\9.html">Case switching | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\10.html">Loops | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\11.html">Infinite loops | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\12.html">Special loop keywords | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\13.html">Loops within loops | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\14.html">Mixed-mode processing | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \6\15.html">Including other files | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \7\0.html">Abnormal script termination | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \8\0.html">Editing your PHP configuration | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \9\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \10\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \11\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 \12\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \0\0.html">Simple variables and operators | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \1\0.html">Types of Data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \2\0.html">Checking a variable is set: isset() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \3\0.html">Automatic type conversion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \4\0.html">Forcing a type with type casting | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \5\0.html">Non-decimal number systems | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \6\0.html">Variable scope | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \7\0.html">Variable variables | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \8\0.html">Superglobals | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \9\0.html">Pre-set variables | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \10\0.html">References | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \11\0.html">Constants: define(), defined(), and constant() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \11\1.html">Pre-set constants | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \12\0.html">Operators | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \12\1.html">Shorthand unary operators | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \12\2.html">Comparison operators | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \12\3.html">Complete operator list | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \12\4.html">The Ternary Operator | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \12\5.html">The scope resolution operator | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \12\6.html">The execution operator | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \12\7.html">Operator precedence and associativity | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \13\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \14\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \15\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\3 \16\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \0\0.html">Functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \1\0.html">Functions overview | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \2\0.html">How to read function prototypes | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \3\0.html">Working with variables: isset(), empty(), and unset() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \4\0.html">Controlling script execution: exit(), eval(), and die() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \5\0.html">Working with Date and Time | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \5\1.html">Reading the current time: time() and microtime() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \5\2.html">Converting from a string: strtotime() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \5\3.html">Converting to a string: date() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \5\4.html">Converting from components: mktime() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \6\0.html">Mathematics | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \6\1.html">Rounding: ceil(), floor(), and round() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \6\2.html">Randomisation: rand(), mt_rand(), getrandmax(), mt_getrandmax(), srand(), and mt_srand() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \6\3.html">Trigonometrical conversion: sin(), cos(), tan(), asin(), acos(), and atan(), deg2rad(), rad2deg() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \6\4.html">Other mathematical conversion functions: abs(), sqrt(), pow, and hypot() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \6\5.html">Base conversion: bindec(), decbin(), dechex(), decoct(), hexdec(), octdec(), and base_convert() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \6\6.html">Mathematical constants | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\0.html">Playing with strings | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\1.html">Reading from part of a string: substr() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\2.html">Replacing parts of a string: str_replace() and str_ireplace() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\3.html">Converting to and from ASCII: chr() and ord() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\4.html">Measuring strings: strlen(), count_chars(), and str_word_count() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\5.html">Finding a string within a string: strpos() and stripos() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\6.html">Returning the first occurrence of a string: strstr() and stristr() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\7.html">Trimming whitespace: trim(), ltrim(), and rtrim() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\8.html">Wrapping your lines: wordwrap() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\9.html">Changing string case: strtoupper(), strtolower(), ucfirst(), and ucwords() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\10.html">Making a secure data hash: sha1() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\11.html">Alternative data hashing: md5() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\12.html">Automatically escaping strings: addslashes() and stripslashes() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\13.html">Pretty-printing numbers: number_format() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\14.html">Removing HTML from a string: strip_tags() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\15.html">Comparing strings: strcmp() and strcasecmp() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\16.html">Padding out a string: str_pad() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\17.html">Complex string printing: printf() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \7\18.html">Parsing a string into variables: parse_str() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \8\0.html">Regular expressions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \8\1.html">Basic regexps with preg_match() and preg_match_all() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \8\2.html">Novice regexps | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \8\3.html">Advanced regexps | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \8\4.html">Guru regexps | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \8\5.html">Regular expression replacements: preg_replace() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \8\6.html">Regular expression syntax examples | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \8\7.html">The regular expressions coach | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \9\0.html">Checking whether a function is available: function_exists() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \10\0.html">Extension functions: get_loaded_extensions(), get_extension_funcs(), dl(), and extension_loaded() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \11\0.html">Pausing script execution: sleep() and usleep() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \12\0.html">Executing external programs: exec(), passthru(), and virtual() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \13\0.html">Connection-related functions: ignore_user_abort(), register_shutdown_function(), and connection_status() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \14\0.html">Altering the execution environment: ini_get(), ini_set(), and set_time_limit() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \15\0.html">User functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \15\1.html">Return values | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \15\2.html">Parameters | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \15\3.html">Passing by reference | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \15\4.html">Returning by reference | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \15\5.html">Default parameters | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \15\6.html">Variable parameter counts: func_num_args(), func_get_arg(), and func_get_args() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \16\0.html">Variable scope in functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \17\0.html">Overriding scope with the GLOBALS array | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \18\0.html">Recursive functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \19\0.html">Variable functions: is_callable(), call_user_func() and call_user_func_array() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \20\0.html">Callback functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \21\0.html">The declare() function and ticks: declare(), register_tick_function(), and unregister_tick_function() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \22\0.html">Handling non-English characters | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \23\0.html">Undocumented functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \24\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \25\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \26\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\4 \27\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \0\0.html">Arrays | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \1\0.html">First steps: array(), count(), print_r(), var_dump(), and var_export() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \2\0.html">Associative arrays | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \3\0.html">The two ways of iterating through arrays: list(), each(), and foreach loops | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \4\0.html">The array operator | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \5\0.html">Returning arrays from functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\0.html">Array-specific functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\1.html">Chopping and changing arrays: array_diff(), array_intersect(), and array_merge() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\2.html">Stripping out duplicate values: array_unique() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\3.html">Filtering your array through a function: array_filter() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\4.html">Converting an array to individual variables: extract() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\5.html">Checking whether an element exists: in_array() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\6.html">Using an array as a double-ended queue: array_shift(), array_unshift(), array_push(), array_pop() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\7.html">Swapping keys and values: array_flip() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\8.html">Sorting arrays: asort(), ksort(), arsort(), and krsort() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\9.html">Grabbing keys and values: array_keys() and array_values() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\10.html">Randomising your array: shuffle() and array_rand() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \6\11.html">Creating an array of numbers: range() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \7\0.html">Multidimensional arrays | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \8\0.html">The array cursor: reset(), end(), next(), and prev() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \9\0.html">Holes in arrays | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \10\0.html">Arrays in strings | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \11\0.html">Saving arrays: serialize(), unserialize(), urlencode(), and urldecode() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \12\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \13\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \14\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\5 \15\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \0\0.html">Objects | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \1\0.html">Conceptual overview | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \2\0.html">Classes | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \2\1.html">Defining a class | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \2\2.html">How to design your class | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \2\3.html">Basic inheritance | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \2\4.html">Overriding functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \3\0.html">Objects | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \4\0.html">Variables | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \5\0.html">The 'this' variable | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \6\0.html">Objects within objects | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \7\0.html">Access control modifiers | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \7\1.html">Public | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \7\2.html">Private | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \7\3.html">Protected | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \7\4.html">Final | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \7\5.html">Abstract | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \7\6.html">Iterating through object variables | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \8\0.html">Object type information: instanceof and is_subclass_of() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \9\0.html">Class type hints | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \10\0.html">Constructors and destructors | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \10\1.html">Parent constructors | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \10\2.html">Destructors | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \10\3.html">Deleting objects | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \11\0.html">Copying objects | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \12\0.html">Comparing objects with == and === | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \13\0.html">Saving objects: __sleep(), __wakeup(), and get_object_vars() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \14\0.html">Magic functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \14\1.html">__autoload() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \14\2.html">__get() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \14\3.html">__set() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \14\4.html">__call() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \14\5.html">__toString() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \15\0.html">Static data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \16\0.html">Helpful utility functions: class_exists(), get_class(), and get_declared_classes() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \17\0.html">Interfaces: get_declared_interfaces() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \18\0.html">Deferencing object return values | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \19\0.html">The Object-Oriented Website | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \19\1.html">A basic OOP site | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \19\2.html">A more complex OOP website | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \20\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \21\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \22\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\6 \23\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \0\0.html">HTML Forms | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \1\0.html">The state of play | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \2\0.html">What does it mean to be dynamic? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \3\0.html">Designing a form | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \3\1.html">GET and POST | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \3\2.html">Available elements | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \3\3.html">A working form | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \4\0.html">Handling data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \4\1.html">register_globals | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \4\2.html">Working around register_globals: import_request_variables() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \4\3.html">Magic quotes | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \4\4.html">Data handling summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \4\5.html">Handling our form | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \5\0.html">Splitting forms across pages | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \6\0.html">Files sent through forms | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \7\0.html">Validating input | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \7\1.html">Client-side validation | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \7\2.html">Server-side validation | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \7\3.html">Validation in practice: is_string(), is_numeric(), is_float(), is_array(),is_object(), and is_resource() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \7\4.html">Advanced variable validation using CTYPE | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \7\5.html">Key validation points | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \8\0.html">Form design | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \9\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \10\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \11\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\7 \12\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \0\0.html">Files | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \1\0.html">Reading files | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \1\1.html">readfile() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \1\2.html">file_get_contents() and file() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \1\3.html">fopen() and fread() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \2\0.html">Creating and changing files | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \2\1.html">file_put_contents() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \2\2.html">fwrite() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \3\0.html">Moving, copying, and deleting files: rename(), copy(), and unlink() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \3\1.html">Moving files with rename() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \3\2.html">Copying files with copy() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \3\3.html">Deleting files with unlink() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \4\0.html">Temporary files: tmpfile() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \5\0.html">Other file functions: rewind(), and fseek() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \6\0.html">Checking whether a file exists: file_exists() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \7\0.html">Retrieving a file's status: is_readable(), is_writeable(), is_executable(), is_file(), is_dir(), and clearstatcache() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \8\0.html">Dissecting filename information: pathinfo() and basename() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \9\0.html">A working example: making a counter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \10\0.html">Handling file uploads: move_uploaded_file() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \10\1.html">Advanced file upload handling | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \10\2.html">Checking uploaded files: is_uploaded_file() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \11\0.html">Locking files with flock() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \12\0.html">Permissions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \12\1.html">Setting permissions: chmod() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \12\2.html">Changing file ownership: chown() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \13\0.html">Working with directories: opendir(), readdir(), and closedir() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \13\1.html">Deleting directories: rmdir() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \13\2.html">One last directory function: scandir() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \14\0.html">Remote files | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \15\0.html">File checksums: sha1_file() and md5_file() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \16\0.html">Parsing a configuration file: parse_ini_file() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \17\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \18\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \19\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\8 \20\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \0\0.html">Databases | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\0.html">Introduction | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\1.html">Database hierarchy | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\2.html">Types of data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\3.html">Date and time | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\4.html">Transactions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\5.html">Stored procedures | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\6.html">Triggers | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\7.html">Views | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\8.html">Keys | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\9.html">Referential integrity | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\10.html">Indexes | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\11.html">Persistent connections | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\12.html">Temporary Tables | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\13.html">Table handlers | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \1\14.html">Round up | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \2\0.html">History | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \2\1.html">MySQL | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \2\2.html">PostgreSQL | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \2\3.html">Oracle | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \2\4.html">Microsoft SQL Server | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\0.html">SQL | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\1.html">SQL comments | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\2.html">Interacting with MySQL | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\3.html">Creating tables | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\4.html">Making table changes | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\5.html">Deleting tables | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\6.html">Inserting data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\7.html">Selecting data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\8.html">Extra SELECT keywords | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\9.html">Updating data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\10.html">Deleting data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\11.html">MySQL for dummies | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\12.html">A working example | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\13.html">Multiple WHERE conditions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\14.html">Grouping rows together with GROUP BY | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\15.html">MySQL functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\16.html">Managing indexes | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\17.html">Simple text searching using LIKE | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\18.html">Advanced text searching using full-text indexes | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\19.html">Range matching: between() and in() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\20.html">Working with NULL | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \3\21.html">Default values | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \4\0.html">Using MySQL with PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \4\1.html">Connecting to a MySQL database: mysql_connect(), mysql_select_db() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \4\2.html">Querying and formatting: mysql_query() and mysql_num_rows() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \4\3.html">Disconnecting from a MySQL database: mysql_free_result() and mysql_close() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \4\4.html">Reading in data: mysql_fetch_assoc() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \4\5.html">Mixing in PHP variables: mysql_real_escape_string() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \4\6.html">Results within results | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \4\7.html">Advanced formatting | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \4\8.html">Reading auto-incrementing values: mysql_insert_id() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \4\9.html">Unbuffered queries for large data sets: mysql_unbuffered_query() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \5\0.html">phpMyAdmin | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \6\0.html">PEAR::DB | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \6\1.html">Quick PEAR::DB calls | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \6\2.html">Query information | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \6\3.html">Advanced PEAR::DB | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \6\4.html">Impeared performance? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \7\0.html">SQLite | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \7\1.html">Using SQLite | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \7\2.html">Before you begin | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \7\3.html">Getting started: sqlite_open(), sqlite_close(), sqlite_query(), and sqlite_fetch_array() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \7\4.html">Advanced functions: sqlite_last_insert_rowid(), sqlite_fetch_single(), and sqlite_array_query() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \7\5.html">Mixing SQLite and PHP: sqlite_create_function() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \8\0.html">Normalisation | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \8\1.html">Why separate data? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \8\2.html">So, what is the solution here? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \8\3.html">Why not separate data? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \8\4.html">First normal form | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \8\5.html">Second normal form | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \8\6.html">Other normal forms | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \8\7.html">Conclusion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \9\0.html">Table joins | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \9\1.html">Complex joins | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \10\0.html">Using temporary tables | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \11\0.html">Adjusting the priority queue | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \12\0.html">How to design your tables | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \13\0.html">Picking the perfect data type | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \14\0.html">When MySQL knows best | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \15\0.html">Persistent connections: mysql_pconnect() and sqlite_popen() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \16\0.html">Choosing a table type | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \17\0.html">Transactions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \18\0.html">MySQL Improved | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \19\0.html">Subselects, views, and other advanced functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \19\1.html">Subselects | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \19\2.html">Views | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \19\3.html">Referential integrity | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \20\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \21\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \22\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\9 \23\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\0\0.html">Cookies and Sessions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\1\0.html">Cookies vs. Sessions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\1\1.html">Cookies | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\1\2.html">Sessions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\1\3.html">Choosing the appropriate option | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\2\0.html">Using cookies: setcookie() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\3\0.html">Using sessions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\3\1.html">Starting a session: session_start() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\3\2.html">Adding session data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\3\3.html">Reading session data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\3\4.html">Removing session data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\3\5.html">Ending a session: session_destroy() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\3\6.html">Checking session data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\3\7.html">Files vs. Databases: session_set_save_handler() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\4\0.html">Storing complex data types | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\5\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\6\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\7\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 0\8\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\0\0.html">Multimedia | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\1\0.html">Brief history of web media | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\1\1.html">GIF | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\1\2.html">PNG | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\1\3.html">JPEG | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\1\4.html">RTF | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\1\5.html">PDF | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\1\6.html">Flash | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\1\7.html">SVG | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\0.html">Images | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\1.html">Creating new images: imagecreate(), imagedestroy(), imagecolorallocate() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\2.html">Choosing a format | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\3.html">Getting arty: imagefilledrectangle() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\4.html">More shapes: imagecreatetruecolor(), imagefilledellipse(), imagefilledarc(), imageellipse(), imagearc(), and imagerectangle() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\5.html">Complex shapes: imagefilledpolygon() and imagepolygon() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\6.html">Outputting text: imagettftext() and imagettfbbox() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\7.html">Loading existing images: imagecreatefrompng(), imagecreatefromjpeg(), and getimagesize() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\8.html">Colour and image fills: imagefill(), imagefilltoborder(), and imagesettile() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\9.html">Adding transparency: imagecolortransparent() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\10.html">Using brushes: imagesetbrush() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\11.html">Basic image copying: imagecopy() and imagecopymerge() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\12.html">Scaling and rotating: imagecopyresized(), imagecopyresampled(), and imagerotate() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\13.html">Points and lines: imagesetpixel(), imageline(), and imagesetthickness() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\14.html">Updating the drawing script | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\15.html">Special effects using imagefilter() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\16.html">Introduction to special effects using simple algorithms | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\17.html">Special FX, Colour reduction: imagetruecolortopalette() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\18.html">Special FX, Interlacing | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\19.html">Special FX, Screen | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\20.html">Special FX, Greyscale: imagecolorat() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\21.html">Special FX, Duotone | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\22.html">Special FX, Noise | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\23.html">Special FX, Scatter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\24.html">Special FX, Pixelate | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\25.html">Special FX, Blur | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\26.html">Special FX, Other special effects | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\27.html">Interlacing an image: imageinterlace() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\28.html">Getting an image's MIME type: image_type_to_mime_type() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\29.html">Keeping your files small | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\2\30.html">Making graphs | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\3\0.html">Working with RTF | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\0.html">Creating PDF documents | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\1.html">There's more than one way to do it | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\2.html">Getting started: pdf_new(), pdf_open_file(), pdf_findfont(), pdf_begin_page(), pdf_setfont(), pdf_show_xy(), pdf_end_page(), pdf_close(), and pdf_delete() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\3.html">Adding more pages and more style: pdf_setcolor() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\4.html">Adding imagery: pdf_open_image_file() and pdf_place_image() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\5.html">PDF special effects: pdf_rotate() and pdf_skew() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\6.html">Adding document data: pdf_add_note(), pdf_set_info() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\7.html">PDF Conclusion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\8.html">Point sizes in real life | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\9.html">ClipPDF interoperability | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\4\10.html">PDF without a module? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\5\0.html">Creating Flash | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\5\1.html">A simple movie | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\5\2.html">Flashy text | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\5\3.html">Actions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\5\4.html">Animation | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\5\5.html">Flash Conclusion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\6\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\7\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\8\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 1\9\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\0\0.html">XML &amp, XSLT | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\1\0.html">Introduction to XML | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\2\0.html">Event-based parsing | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\2\1.html">Creating a parser: xml_parser_create() and xml_parser_free() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\2\2.html">Getting to know callback functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\2\3.html">Callback function implementation | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\2\4.html">Event-based XML parsing, at last! | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\2\5.html">Bringing Everything Together | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\3\0.html">SimpleXML | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\3\1.html">First steps | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\3\2.html">Reading from a string | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\3\3.html">Searching and filtering with XPath | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\3\4.html">Outputting XML: asXML() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\4\0.html">Transforming XML using XSLT | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\4\1.html">Adding PHP to the mix | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\4\2.html">Handling the processed output | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\4\3.html">Making XSL work for its money | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\4\4.html">What else can XSL do? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\4\5.html">XSLT Conclusion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\5\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\6\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\7\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 2\8\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\0\0.html">Output Buffering | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\1\0.html">Advantages | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\2\0.html">Performance Considerations | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\3\0.html">Getting started: ob_start(), ob_end_flush(), and ob_end_clean() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\4\0.html">Reusing buffers: ob_flush() and ob_clean() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\5\0.html">Stacking buffers | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\6\0.html">Flushing stacked buffers | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\7\0.html">Reading buffers: ob_get_contents() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\8\0.html">Other OB functions: ob_get_length(), ob_get_level(), and ob_list_handlers() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\9\0.html">Flushing output: flush() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\10\0.html">Compressing output | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\11\0.html">URL rewriting: output_add_rewrite_var() and output_reset_rewrite_vars() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\12\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\13\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\14\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 3\15\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\0\0.html">Java and COM | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\1\0.html">Getting started with COM | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\1\1.html">Instantiating an object | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\1\2.html">Basic COM | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\1\3.html">Advanced COM | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\1\4.html">The possibilities of COM | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\1\5.html">DCOM | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\1\6.html">Microsoft .NET | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\2\0.html">Bringing Java into the mix | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\2\1.html">Basic Java use | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\2\2.html">The drawbacks of basic Java use | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\2\3.html">Your own classes | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\2\4.html">Using Swing | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\2\5.html">The future of PHP and Java | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\3\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\4\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\5\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 4\6\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\0\0.html">Networks | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\1\0.html">Sockets | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\1\1.html">Sockets are files: fsockopen() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\1\2.html">Making a simple search engine | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\1\3.html">Sockets aren't all about HTTP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\1\4.html">Sockets can be servers: socket_create_listen(), socket_accept(), socket_write(), socket_read(), and socket_close() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\1\5.html">Sockets can be powerful | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\2\0.html">Domain resolution functions: dns_check_record(), dns_get_mx(), and dns_get_record() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\3\0.html">Host and IP resolution: gethostbyaddr(), gethostbyname(), and gethostbynamel() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\4\0.html">HTTP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\4\1.html">Sending custom headers: header() and headers_sent() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\4\2.html">Reading queued headers: headers_list() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\4\3.html">Authentication over HTTP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\4\4.html">Dynamic authentication | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\5\0.html">Sending mail: mail() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\5\1.html">MIME types: mime_content_type() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\5\2.html">Easier mail sending with PEAR::Mail | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\5\3.html">Sending mixed-type messages with PEAR::Mail_Mime | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\5\4.html">Sending attachments (at last!) | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\6\0.html">Reading mail | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\6\1.html">Opening a mailbox: imap_open() and imap_close() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\6\2.html">Reading message information: imap_headers() and imap_header() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\6\3.html">Reading message contents: imap_num_msg() and imap_body() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\7\0.html">Dealing with MIME-encoded messages: imap_fetchbody() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\8\0.html">Mail management: imap_sort(), imap_delete(), imap_undelete(), imap_expunge(), imap_mailboxmsginfo(), and imap_last_error() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\9\0.html">Transferring files over FTP: ftp_connect(), ftp_login(), ftp_pasv(), ftp_chdir(), ftp_get(), and ftp_close() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\9\1.html">Other helpful FTP functions: ftp_put(), ftp_systype(), ftp_rename(), ftp_mkdir(), and ftp_rmdir() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\10\0.html">Curl | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\10\1.html">Installing Curl | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\10\2.html">Your first Curl scripts: curl_init(), curl_setopt(), curl_exec(), curl_close() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\10\3.html">The abridged list of Curl options | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\10\4.html">Debugging Curl | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\11\0.html">Custom data stream handling | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\11\1.html">The Morse code stream: stream_wrapper_register() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\12\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\13\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\14\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 5\15\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\0\0.html">Miscellaneous topics | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\1\0.html">Process control | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\1\1.html">Taking control of PHP: pcntl_signal() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\1\2.html">Timing your signals: pcntl_alarm() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\1\3.html">Getting into multiprocessing: pcntl_fork(), pcntl_waitpid(), and pcntl_wexitstatus() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\1\4.html">Duplication of resources when forking | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\1\5.html">The third parameter to pcntl_waitpid() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\1\6.html">Event-driven child termination | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\1\7.html">Other ways to evaluate pcntl_waitpid()'s return value: pcntl_wifexited(), pcntl_wifsignaled(), pcntl_wifstopped(), pcntl_wtermsig(), and pcntl_wstopsig() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\1\8.html">Running programs in the current process space: pcntl_exec() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\1\9.html">Piping between processes: proc_open() and proc_close() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\2\0.html">POSIX functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\2\1.html">Error handling: posix_get_last_error() and posix_strerror() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\3\0.html">The Standard PHP Library | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\4\0.html">Reflection | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\5\0.html">Browser detection | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\6\0.html">Arbitrary-precision mathematics | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\7\0.html">Spellchecking and text matching | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\7\1.html">Calculating similarity of words: similar_text() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\8\0.html">Templates | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\8\1.html">Templates ABC | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\8\2.html">How do they work? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\8\3.html">When not to use templates | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\8\4.html">Writing your own | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\9\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\10\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\11\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 6\12\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\0\0.html">Security concerns | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\0.html">Programming secure PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\1.html">register_globals | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\2.html">Choose your file extension carefully | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\3.html">Put key files outside your document root | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\4.html">Remember that most files are public | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\5.html">Hide your identity | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\6.html">Hiding PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\7.html">Restrict general database access | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\8.html">Restrict PHP database access | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\9.html">Denial of service | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\10.html">Pre-initialise important variables to safe values | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\1\11.html">Be wary of session fixation | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\2\0.html">Hosting PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\2\1.html">Understanding the concerns | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\2\2.html">Safe mode | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\3\0.html">Protecting your data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\3\1.html">Data encryption | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\3\2.html">Terms you need to know | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\3\3.html">Asymmetric vs. Symmetric | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\3\4.html">Basic symmetric encryption in action: str_rot13() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\3\5.html">Advanced symmetric encryption | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\3\6.html">Symmetric decryption: mdecrypt_generic() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\3\7.html">Changing encryption algorithm | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\3\8.html">Changing block cipher mode | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\4\0.html">Hardened PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\5\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\6\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\7\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 7\8\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\0\0.html">Performance | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\0.html">Optimising your code | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\1.html">Write your code sensibly | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\2.html">Use your tools wisely | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\3.html">Avoid functions for maximum performance | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\4.html">Use the Zend Optimizer | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\5.html">Use a PHP code cache | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\6.html">Read the manual carefully | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\7.html">Get your loops right first | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\8.html">Pre-increment where possible | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\9.html">Don't think that using references will lower your RAM usage | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\10.html">Be wary of garbage collection, part 1 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\11.html">Be wary of garbage collection, part 2 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\12.html">Listen to all errors, big and small | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\13.html">Keep up to date | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\14.html">Cache array data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\15.html">Compress your output | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\16.html">Don't use CGI | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\17.html">Don't use dl() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\18.html">Debug your code | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\19.html">Cache your pages | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\20.html">Use persistent connections | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\21.html">Take advantage of new features | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\22.html">Compile right | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\23.html">Ignore the myths | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\24.html">Avoid mod_access if you can | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\1\25.html">Don't fret about Apache 2.0 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\0.html">Optimising your SQL | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\1.html">Prioritise your data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\2.html">Optimise your tables | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\3.html">Select as little data as possible | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\4.html">Use shorter queries where possible | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\5.html">Use the EXPLAIN statement | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\6.html">Change your hardware | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\7.html">Choose your data types carefully | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\8.html">Size vs. Speed | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\9.html">Declare fields NOT NULL | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\10.html">Load data intelligently | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\11.html">Consider splitting off variable-length fields | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\12.html">Be wary of locks | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\13.html">Consider switching OS | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\14.html">Spot slow queries | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\15.html">Perform joins carefully | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\16.html">Index your data | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\17.html">Make sure your indexes are being used | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\18.html">Normalisation | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\19.html">Upgrade MySQL | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\20.html">Increase your buffers | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\21.html">Keep tabs on your server | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\22.html">Lock your tables when appropriate | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\23.html">Don't rely on automatic type conversion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\24.html">Benchmark, benchmark, benchmark! | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\2\25.html">Know MySQL's strengths | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\3\0.html">Server | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\4\0.html">PHP Accelerators | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\5\0.html">Caching PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\6\0.html">PHP as a CGI or a module? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\7\0.html">Size of scripts | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\8\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\9\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\10\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 8\11\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\0\0.html">Writing PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\1\0.html">The design process | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\1\1.html">Analysing the requirements | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\1\2.html">Designing the solution | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\1\3.html">Developing the code | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\1\4.html">Implementing the application | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\1\5.html">Maintenance and support | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\2\0.html">Which IDEs are good | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\2\1.html">Line numbering | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\2\2.html">Syntax highlighting | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\2\3.html">Online help | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\2\4.html">Code insight | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\2\5.html">Interactive debugging | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\2\6.html">Profiling | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\2\7.html">Popular IDEs | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\3\0.html">Laying out your files | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\3\1.html">Directory structuring | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\4\0.html">Group development | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\4\1.html">How to develop code | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\4\2.html">Version control | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\5\0.html">Documenting your project | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\6\0.html">Testing: php_check_syntax() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\7\0.html">Distributing your code | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\7\1.html">Charging for your work | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\7\2.html">PHP Encoders | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\7\3.html">Cross-platform code 1: Loading extensions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\7\4.html">Cross-platform code 2: Using extensions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\7\5.html">Cross-platform code 3: Path and line separators | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\7\6.html">Cross-platform code 4: Coping with php.ini differences | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\7\7.html">Cross-platform code 5: Checking the PHP version with phpversion() and version_compare() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\0.html">Debugging | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\1.html">What is a bug? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\2.html">The most basic debugging technique: debug_zval_dump() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\3.html">Making assertions: assert() and assert_options() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\4.html">Triggering your own errors: trigger_error() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\5.html">Source highlighting: highlight_file() and highlight_string() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\6.html">Handling MySQL errors: mysql_error() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\7.html">Exception handling | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\8.html">Backtracing your code: debug_backtrace() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\9.html">Debuggers | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\10.html">Custom error handlers: set_error_handler(), restore_error_handler(), and error_log() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\11.html">Custom exception handlers: set_exception_handler() and restore_exception_handler() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\12.html">Using @ to disable errors | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\8\13.html">phpinfo() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\9\0.html">Debugging practice | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\10\0.html">Coding style | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\10\1.html">Comments and whitespace | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\10\2.html">Variable naming | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\10\3.html">Functions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\10\4.html">Distinguishing code blocks | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\11\0.html">Output style | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\11\1.html">Options for Tidy | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\12\0.html">Troubleshooting | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\12\1.html">Error types | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\12\2.html">Choosing what types of errors you see: error_reporting() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\12\3.html">Common errors | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\13\0.html">Getting Help | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\13\1.html">The documentation | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\13\2.html">Mailing lists | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\13\3.html">Websites | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\13\4.html">IRC | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\13\5.html">Conferences | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\13\6.html">User groups | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\13\7.html">Submitting a bug | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\13\8.html">Contacting the author | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\14\0.html">Getting qualified | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\15\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\16\0.html">Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\17\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\1 9\18\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\0\0.html">Writing extensions | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\1\0.html">Why write your own extension? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\1\1.html">The C Perspective | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\2\0.html">Before we begin | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\3\0.html">First steps | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\4\0.html">Hello world - in C! | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\5\0.html">C Hello World v2 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\6\0.html">Factorials in C | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\7\0.html">Extensions Conclusion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\8\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\9\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 0\10\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\0\0.html">Alternative PHP uses | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\1\0.html">What else can be done with PHP? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\2\0.html">Command-line scripting | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\2\1.html">Why use shell scripts? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\2\2.html">CLI SAPI differences | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\2\3.html">Your first CLI script | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\2\4.html">Advanced command-line parsing: getopt() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\2\5.html">Getting down and dirty | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\2\6.html">Getting into the swing of things | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\2\7.html">Sending code direct to PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\2\8.html">The grand finale | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\2\9.html">CLI Conclusion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\0.html">Graphical user interfaces | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\1.html">Getting started | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\2.html">GUI toolkits | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\3.html">A Basic GUI | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\4.html">Multiple Windows | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\5.html">Handling popup menus | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\6.html">Advanced GUIs | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\7.html">Using Custom Parameters | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\8.html">GUI Themes | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\9.html">Distributing your apps | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\3\10.html">Graphical Interfaces Conclusion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\4\0.html">Making games | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\4\1.html">Text-based world planning | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\4\2.html">Text game v1 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\4\3.html">Getting graphical | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\4\4.html">Getting it to work | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\4\5.html">First steps | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\4\6.html">Moving our sprite: phpSDL_GetKeyState() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\4\7.html">Clearing the screen: phpSDL_MapRGB() and phpSDL_FillRect() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\4\8.html">Last tweaks: phpSDL_WM_SetCaption(), phpSDL_SetColorKey(), and phpSDL_GetTicks() | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\4\9.html">Games conclusion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\0.html">Making your own language | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\1.html">Why make your own language? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\2.html">The elements of a compiler | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\3.html">Analysis | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\4.html">Output | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\5.html">Planning it out | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\6.html">How to parse text into tokens | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\7.html">What is a token? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\8.html">How parsing works | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\9.html">Finally, execution | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\10.html">If you have made it this far... | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\11.html">Operator precedence | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\12.html">The script in (almost) full | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\5\13.html">Mini-language conclusion | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\6\0.html">Summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\7\0.html">Further reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 1\8\0.html">Next chapter | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\0\0.html">Practical PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\1\0.html">Creating a poll | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\1\1.html">Analysis: what makes a web poll? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\1\2.html">Development: creating the simplest poll | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\1\3.html">Analysis: Poll v2 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\1\4.html">Putting Poll v2 into action | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\1\5.html">Analysis: Poll 2005 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\1\6.html">Making the final poll | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\1\7.html">Building a better poll | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\2\0.html">Creating a guestbook | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\2\1.html">Analysis | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\2\2.html">Development | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\2\3.html">Problems in paradise: Guestbook v2 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\2\4.html">Fixing the problems | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\2\5.html">Building a better guestbook | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\3\0.html">Creating a messageboard | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\3\1.html">Analysis | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\3\2.html">Development | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\3\3.html">Analysis: Messageboard v1.1 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\3\4.html">Making Messageboard v1.1 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\3\5.html">Messageboard v2 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\3\6.html">Making an object-oriented messageboard | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\4\0.html">Creating thumbnails | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\4\1.html">Analysis | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\4\2.html">Development | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\5\0.html">ASCII art | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\5\1.html">Analysis | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\5\2.html">Development | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\5\3.html">Analysis: ASCII art in colour | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 2\6\0.html">Further Reading | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 3\0\0.html">Bringing it to a close | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\0\0.html">Answers to Exercises | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\1\0.html">Answers to Chapter 2 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\2\0.html">Answers to Chapter 3 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\3\0.html">Answers to Chapter 4 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\4\0.html">Answers to Chapter 5 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\5\0.html">Answers to Chapter 6 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\6\0.html">Answers to Chapter 7 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\7\0.html">Answers to Chapter 8 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\8\0.html">Answers to Chapter 9 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\9\0.html">Answers to Chapter 10 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\10\0.html">Answers to Chapter 11 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\11\0.html">Answers to Chapter 12 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\12\0.html">Answers to Chapter 13 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\13\0.html">Answers to Chapter 14 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\14\0.html">Answers to Chapter 15 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\15\0.html">Answers to Chapter 16 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\16\0.html">Answers to Chapter 17 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\17\0.html">Answers to Chapter 18 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 4\18\0.html">Answers to Chapter 19 | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 5\0\0.html">The future of PHP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 5\1\0.html">Helping out PHP development | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 5\2\0.html">Choosing an ISP | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 5\2\1.html">Does your ISP support PHP? | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 5\3\0.html">Optimisation summary | Practical PHP Programming | TuxRadar Linux</a><br>
<a href="file:\\\C:\TechPubs\Practical PHP Programming\www.tuxradar.com\Parsed\practicalphp\2 6\0\0.html">Glossary | Practical PHP Programming | TuxRadar Linux</a><br>
</p>
</body>
</html>
Attached Files
File Type: txt index.html.txt (156.2 KB, 106 views)
PaneintheGlass is offline   Reply With Quote
Old 09-09-2014, 07:24 PM   #5
theducks
Well trained by Cats
theducks ought to be getting tired of karma fortunes by now.theducks ought to be getting tired of karma fortunes by now.theducks ought to be getting tired of karma fortunes by now.theducks ought to be getting tired of karma fortunes by now.theducks ought to be getting tired of karma fortunes by now.theducks ought to be getting tired of karma fortunes by now.theducks ought to be getting tired of karma fortunes by now.theducks ought to be getting tired of karma fortunes by now.theducks ought to be getting tired of karma fortunes by now.theducks ought to be getting tired of karma fortunes by now.theducks ought to be getting tired of karma fortunes by now.
 
theducks's Avatar
 
Posts: 30,914
Karma: 60358908
Join Date: Aug 2009
Location: The Central Coast of California
Device: Kobo Libra2,Kobo Aura2v1, K4NT(Fixed: New Bat.), Galaxy Tab A
Spaces in file names can bite you in the Glass
theducks is offline   Reply With Quote
Advert
Old 09-09-2014, 09:14 PM   #6
PaneintheGlass
Member
PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.PaneintheGlass actually enjoys Vogon poetry.
 
Posts: 11
Karma: 56780
Join Date: Aug 2014
Device: Onyx Boox Lynx T68
Good guess! But no. Just another ID-10-T. I was using 'file:\\\' instead of 'file:///'. FF made the switch on the sly. Actually, swapped all '\' with '/' which is what threw me. I saw that the 'file:///' matched the 'C:/' in FF, and made the 'file:\\\' match the 'C:\' in the HTML without thinking.

I caught it after comparing the paths between the HTML and the browser after first changing the spaces, and then the spaces and periods to underscores without affecting Calibre. FWIW, I restored the spaces and periods in the path after fixing the 'file:///', and Calibre handled it like a champ!

I appreciate your help, so in closing, let me simply say
PaneintheGlass is offline   Reply With Quote
Old 09-09-2014, 09:19 PM   #7
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,421
Karma: 85400180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
Quote:
Originally Posted by canpolat View Post
I'm not a Calibre super user and for this kind of a task I would rather use Sigil. Sigil is built specifically for generating ePub...
What, you mean like calibre only builds EPUBs as a hobby? Or doing extra things is bad?

calibre operates in a very similar manner to Sigil, with a partially different set of features. It is quite capable, and advising the use of Sigil instead won't really get anyone anywhere unless there is something specific you know Sigil does that calibre editor doesn't.

Is there any particular reason to think Sigil might do better in this specific manner?
eschwartz is offline   Reply With Quote
Old 09-09-2014, 09:22 PM   #8
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,421
Karma: 85400180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
Quote:
Originally Posted by theducks View Post
Spaces in file names can bite you in the Glass
Only in terms of confusion. Quoting should handle them just fine.

Still, good habits and all...
eschwartz is offline   Reply With Quote
Old 09-10-2014, 04:34 AM   #9
canpolat
Connoisseur
canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.
 
Posts: 92
Karma: 17950
Join Date: Mar 2013
Device: Xodo
Quote:
Originally Posted by eschwartz View Post
What, you mean like calibre only builds EPUBs as a hobby? Or doing extra things is bad?

calibre operates in a very similar manner to Sigil, with a partially different set of features. It is quite capable, and advising the use of Sigil instead won't really get anyone anywhere unless there is something specific you know Sigil does that calibre editor doesn't.

Is there any particular reason to think Sigil might do better in this specific manner?
What I meant is what I said: "I'm not a Calibre super user and for this kind of a task I would rather use Sigil." To me, creating an empty ePub in Sigil and then adding all my HTML files is the most straightforward path to follow. I don't consider Calibre to be the best tool for building ePubs (I use it for format conversion) therefore I recommended Sigil for the task. I wouldn't object others using Calibre for whatever purpose they desire.
canpolat is offline   Reply With Quote
Old 09-10-2014, 04:56 AM   #10
BetterRed
null operator (he/him)
BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.
 
Posts: 21,640
Karma: 29710510
Join Date: Mar 2012
Location: Sydney Australia
Device: none
Quote:
Originally Posted by canpolat View Post
I don't consider Calibre to be the best tool for building ePubs (I use it for format conversion) therefore I recommended Sigil for the task.
@canpolat - perhaps you're not familiar with the calibre Book Editor ==>> Editing E-books

It has most of the features of Sigil and its still being actively developed. Kovid was motivated to develop the calibre Book Editor because Sigil seemed to have reached its EOL, although as of yesterday it might have got a reprieve.

I use both of them.

BR
BetterRed is offline   Reply With Quote
Old 09-10-2014, 06:02 AM   #11
canpolat
Connoisseur
canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.
 
Posts: 92
Karma: 17950
Join Date: Mar 2013
Device: Xodo
Quote:
Originally Posted by BetterRed View Post
@canpolat - perhaps you're not familiar with the calibre Book Editor ==>> Editing E-books

It has most of the features of Sigil and its still being actively developed. Kovid was motivated to develop the calibre Book Editor because Sigil seemed to have reached its EOL, although as of yesterday it might have got a reprieve.

I use both of them.

BR
@BetterRed I heard about that tool but haven't used it. Having alternatives is a good thing in general. I hope it quickly reaches the quality and completeness of Sigil (from what you said I'm assuming it's not complete yet).

Last edited by canpolat; 09-10-2014 at 06:18 AM.
canpolat is offline   Reply With Quote
Old 09-10-2014, 06:49 AM   #12
BetterRed
null operator (he/him)
BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.BetterRed ought to be getting tired of karma fortunes by now.
 
Posts: 21,640
Karma: 29710510
Join Date: Mar 2012
Location: Sydney Australia
Device: none
@capolat - its not too far short of what there is in Sigil, and it has features that Sigil lacks - eg checkpointing. Have a look, I suspect you'll be surprised at where its at.

The good thing is that if there is a problem it's usually fixed lickety-split - i.e. within a week, if you want to run from source you'll often get same day service. One thing it doesn't have that Sigil 'has' is WSIWYG editing - but then again editing in Sigil's Book View is problematic.

The main things I use in Sigil are Spellchecker, Reports and the Index Editor, the latter two are not available in the calibre editor, and Sigil's Spellchecker is noticeably faster when you're using large dictionaries (or it was last time I compared the two)

BR
BetterRed is offline   Reply With Quote
Old 09-10-2014, 07:05 AM   #13
DoctorOhh
US Navy, Retired
DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.DoctorOhh ought to be getting tired of karma fortunes by now.
 
DoctorOhh's Avatar
 
Posts: 9,890
Karma: 13806776
Join Date: Feb 2009
Location: North Carolina
Device: Icarus Illumina XL HD, Kindle PaperWhite SE 11th Gen
Quote:
Originally Posted by canpolat View Post
What I meant is what I said: "I'm not a Calibre super user and for this kind of a task I would rather use Sigil." To me, creating an empty ePub in Sigil and then adding all my HTML files is the most straightforward path to follow. I don't consider Calibre to be the best tool for building ePubs (I use it for format conversion) therefore I recommended Sigil for the task. I wouldn't object others using Calibre for whatever purpose they desire.
All the OP was trying to do in the end was format conversion from a working html to epub. Once he corrected his index it took less than 4 minutes to add the html book, update the cover and metadata in the gui and convert it to epub.
DoctorOhh is offline   Reply With Quote
Old 09-10-2014, 07:27 AM   #14
canpolat
Connoisseur
canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.
 
Posts: 92
Karma: 17950
Join Date: Mar 2013
Device: Xodo
Quote:
Originally Posted by DoctorOhh View Post
All the OP was trying to do in the end was format conversion from a working html to epub. Once he corrected his index it took less than 4 minutes to add the html book, update the cover and metadata in the gui and convert it to epub.
I'm well aware of that. The section you quote is an answer to a different quesiton: "What, you mean like calibre only builds EPUBs as a hobby?" Perhaps if the question wasn't asked, you wouldn't see me providing an answer, no? The fact that OP has resolved the issue is -unfortunately- irrelevant.
canpolat is offline   Reply With Quote
Old 09-10-2014, 07:32 AM   #15
canpolat
Connoisseur
canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.canpolat for a long time would go to bed early.
 
Posts: 92
Karma: 17950
Join Date: Mar 2013
Device: Xodo
Quote:
Originally Posted by BetterRed View Post
@capolat - its not too far short of what there is in Sigil, and it has features that Sigil lacks - eg checkpointing. Have a look, I suspect you'll be surprised at where its at.

The good thing is that if there is a problem it's usually fixed lickety-split - i.e. within a week, if you want to run from source you'll often get same day service. One thing it doesn't have that Sigil 'has' is WSIWYG editing - but then again editing in Sigil's Book View is problematic.

The main things I use in Sigil are Spellchecker, Reports and the Index Editor, the latter two are not available in the calibre editor, and Sigil's Spellchecker is noticeably faster when you're using large dictionaries (or it was last time I compared the two)

BR
Thank you for the recommendation. I skimmed thru the documentation and it looks promising. I don't use the WYSIWYG editing in Sigil, but the fact that I have to import my book into Calibre to be able to edit it doesn't appeal to me (I use ebook-convert CLI for book conversion). Is it also available as a stand-alone tool?
canpolat is offline   Reply With Quote
Reply


Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
HTMLZ's index.html hyperlinks don't work in Word 2010 mkhuebner Conversion 3 11-03-2012 11:30 PM
index.html with links to PDF's Dokumentleser Conversion 0 09-11-2012 04:55 PM
HTML to Mobi conversion with very wide tables and Index tab sjahangi Conversion 0 04-21-2011 02:30 PM
Calibre Recipe HTML content differs from raw html of index.html. krunk Calibre 4 09-20-2010 09:48 PM
Questions about updating index after adding books to Memroy card kaufman Sony Reader 3 11-19-2006 01:24 PM


All times are GMT -4. The time now is 02:45 PM.


MobileRead.com is a privately owned, operated and funded community.