Rights Contact Login For More Details
- Wiley
More About This Title Expert PHP and MySQL
- English
English
PHP is the world's most popular, general-purpose, open-source scripting language and MySQL is the world's most popular open-source database. This expert-level book begins with a brief overview of the two technologies and quickly moves on to coverage of advanced programming techniques, as well as the exciting new features of the PHP 5.3 release.
Written by three of PHP and MySQL experts and veteran authors, this resource focuses on best practices and expert techniques that can be applied to the most difficult MySQL-driven PHP applications. The authors share design patterns and tools that they themselves have tested in order to save you valuable time usually spent on figuring things out via trial and error.
Reveals best practices and advanced techniques for handling challenges you may face with MySQL-driven PHP appsReviews practical data reporting techniques for separating business logic from presentationExplains how to obtain improved performance and flexibility through caching, multi-tasking, PHP extensions, and MySQL user defined functionsDiscusses security, optimization, and debuggingShares author-tested design patterns and tools to save you time and effortPacked with helpful examples and indispensable advice, this book shares tips and tricks that you can immediately apply to your projects.
- English
English
Ronald Bradford is a technology strategist and advisor specializing in MySQL, Drizzle and related web technologies. With a primary focus on architecture, design, performance analysis and scalability of web applications, his consulting portfolio ranges from Internet startups to Fortune 500 companies.
Patrick Galbraith is a principal software engineer at Lycos, adding new PHP and MySQL offerings for Tripod Users, switching remaining apps using Oracle to MySQL as well as other interesting projects.
- English
English
INTRODUCTION XXIX
CHAPTER 1:TECHNIQUES EVERY EXPERT PROGRAMMER NEEDS TO KNOW 1
Object-Oriented PHP 2
Using MySQL Joins 20
MySQL Unions 28
GROUP BY in MySQL Queries 30
Logical Operations and Flow Control in MySQL 33
Maintaining Relational Integrity 35
Subqueries in MySQL 46
Using Regular Expressions 49
Summary 63
CHAPTER 2: ADVANCED PHP CONCEPTS 65
A Problem That Needs Solving 65
Iterators and the SPL 67
Lambda Functions and Closures 78
Summary 85
CHAPTER 3: MYSQL DRIVERS AND STORAGE ENGINES 87
MySQL Drivers 88
About MySQL Storage Engines 89
Default Storage Engines 93
Other MySQL Supplied Engines 118
Pluggable Engines 121
Engines as Standalone Products 124
Other MySQL Offerings 125
Summary 129
CHAPTER 4:IMPROVING PERFORMANCE THROUGH CACHING 131
eAccelerator and APC 132
memcached 138
Installing memcached 145
Starting memcached 148
Libmemcached 153
Libmemcached Utility Programs 155
PECL/Memcached 158
Practical Caching 180
Summary 188
CHAPTER 5: MEMCACHED AND MYSQL 191
The Memcached Functions for MySQL 191
How the Memcached Functions for MySQL Work 192
Installing the Memcached Functions for MySQL 193
Using the Memcached Functions for MySQL 196
Summary 220
CHAPTER 6: ADVANCED MYSQL 221
Views 221
Stored Procedures and Functions 226
Triggers 232
Transactions 237
Replication 250
Events 264
Summary 270
CHAPTER 7:EXTENDING MYSQL WITH USER-DEFINED FUNCTIONS 271
Introduction to UDFs 272
Developing a UDF 273
A Practical UDF Example 274
Other UDF SQL Statements 300
Debugging a UDF 300
Summary 305
CHAPTER 8: WRITING PHP EXTENSIONS 307
Setting Up the Build Environment 308
Creating an Extension with ext_skel 309
Creating an Extension with CodeGen_PECL 314
Variables in PHP Extensions 321
Using Functions in Extensions 329
Input/Output 340
Arrays and Hash Tables 347
Objects and Interfaces 349
Constants, INI Directives, and Globals 357
Describing an Extension 361
Summary 364
CHAPTER 9: FULL-TEXT SEARCHING 365
MySQL FULLTEXT Indexes 365
A Better Solution: The Sphinx Full-Text Search Engine 369
Developing Applications That Use SPHINX 395
Summary 399
CHAPTER 10: MULTI-TASKING IN PHP AND MYSQL 401
Gearman 401
What Is Gearman? 402
Narada: A Search Engine Application 412
Summary 442
CHAPTER 11: REWRITE RULES 443
Using Rewrite Rules 444
Rewrite Maps 451
Summary 456
CHAPTER 12: USER AUTHENTICATION 457
Designing the Database 458
HTTP-Based Authentication 460
Pure PHP Authentication 466
Access Control Lists 473
Summary 475
CHAPTER 13:UNDERSTANDING THE INFORMATION_SCHEMA 477
Using the INFORMATION_SCHEMA 478
Table Objects Tables 479
Other Database Objects Tables 481
MySQL Status Tables 482
MySQL Meta Data Tables 486
MySQL ACL Permissions Tables 488
INFORMATION_SCHEMA Extensions 491
SHOW Cross Reference 491
Summary 492
CHAPTER 14: SECURITY 493
Hardening Your MySQL Server 493
Encoding Data 501
PHP Security Recipes 506
Summary 516
CHAPTER 15: COMMAND-LINE AND WEB SERVICES 517
Creating Command-Line Scripts 517
Creating Web Services 524
Summary 541
CHAPTER 16: OPTIMIZATION AND DEBUGGING 543
Debugging PHP 543
Optimizing Queries 545
Debugging MySQL 560
Summary 565
INDEX 567