"Expert PHP and MySQL" - Information and Links:

Expert PHP and MySQL - Info and Reading Options

Book's cover
The cover of “Expert PHP and MySQL” - Open Library.

"Expert PHP and MySQL" was published by Wiley Pub. in 2010 - Indianapolis, IN, it has 587 pages and the language of the book is English.


“Expert PHP and MySQL” Metadata:

  • Title: Expert PHP and MySQL
  • Author:
  • Language: English
  • Number of Pages: 587
  • Publisher: Wiley Pub.
  • Publish Date:
  • Publish Location: Indianapolis, IN

“Expert PHP and MySQL” Subjects and Themes:

Edition Specifications:

  • Pagination: xxxiii, 587 p. :

Edition Identifiers:

AI-generated Review of “Expert PHP and MySQL”:


"Expert PHP and MySQL" Table Of Contents:

  • 1- Introduction
  • 2- Techniques Every Expert Programmer Needs to Know
  • 3- Object-Oriented PHP
  • 4- Instantiation and Polymorphism
  • 5- Interfaces
  • 6- Magic Methods and Constants
  • 7- Design Patterns
  • 8- Using MySQL Joins
  • 9- INNER JOIN
  • 10- OUTER JOIN
  • 11- Other JOIN Syntax
  • 12- Complex Joins
  • 13- MySQL Unions
  • 14- GROUP BY in MySQL Queries
  • 15- WITH ROLLUP
  • 16- HAVING
  • 17- Logical Operations and Flow Control in MySQL
  • 18- Logic Operators
  • 19- Flow Control
  • 20- Maintaining Relational Integrity
  • 21- Constraints
  • 22- NOT NULL
  • 23- UNSIGNED
  • 24- ENUM and SET
  • 25- UNIQUE KEY
  • 26- FOREIGN KEY
  • 27- Using Server SQL Modes
  • 28- Storage Engine Integrity
  • 29- What MySQL Does Not Tell You
  • 30- What's Missing?
  • 31- Subqueries in MySQL
  • 32- Subquery
  • 33- Correlated Subquery
  • 34- Derived Table
  • 35- Using Regular Expressions
  • 36- General Patterns
  • 37- Expert Regular Expressions
  • 38- Putting It All Together in PHP
  • 39- Regular Expressions in MySQL
  • 40- Summary
  • 41- Advanced PHP Concepts
  • 42- A Problem That Needs Solving
  • 43- Iterators and the SPL
  • 44- A Sample View for the Application
  • 45- The Iterator Interface
  • 46- The Countable Interface
  • 47- The SeekableIterator Interface and Pagination
  • 48- The ArrayAccess Interface
  • 49- Lambda Functions and Closures
  • 50- The Old Way: Lambda-Style Functions
  • 51- Understanding Closures
  • 52- Using the Query Builder for Prototyping
  • 53- Summary
  • 54- MySQL Drivers and Storage Engines
  • 55- MySQL Drivers
  • 56- About MySQL Storage Engines
  • 57- Obtaining Storage Engine Information
  • 58- Default Storage Engines
  • 59- MyISAM
  • 60- InnoDB
  • 61- Memory
  • 62- Blackhole
  • 63- Archive
  • 64- Merge
  • 65- CSV
  • 66- Federated
  • 67- Other MySQL Supplied Engines
  • 68- Falcon
  • 69- Maria
  • 70- Pluggable Engines
  • 71- InnoDB Plugin
  • 72- PBXT
  • 73- XtraDB
  • 74- Engines As Standalone Products
  • 75- InfiniDB
  • 76- TokuDB
  • 77- Infobright
  • 78- Other MySQL Offerings
  • 79- Storage Engine Patch Products
  • 80- MySQL-Related Products
  • 81- Other Engines
  • 82- Integrated Hardware Engines
  • 83- Other Solutions
  • 84- Wafflegrid
  • 85- Summary
  • 86- Improving Performance Through Caching
  • 87- eAccelerator and APC
  • 88- Installing and Configuring APC
  • 89- Installing and Configuring eAccelerator
  • 90- User Cache
  • 91- Checking the Cache Status
  • 92- When to Use APC and eAccelerator
  • 93- memcached
  • 94- What Is memcached?
  • 95- What memcached Does for You
  • 96- How Does memcached Work?
  • 97- How to Use memcached
  • 98- What Is Gearman?
  • 99- Caching Strategies
  • 100- Installing memcached
  • 101- Starting memcached
  • 102- Startup Scripts
  • 103- Testing Your memcached Installation
  • 104- memcached Clients
  • 105- Libmemcached
  • 106- Libmemcached Features
  • 107- Libmemcached Utility Programs
  • 108- Installing Libmemcached
  • 109- Libmemcached Utility Programs
  • 110- memcat
  • 111- memflush
  • 112- memcp
  • 113- memstat
  • 114- memrm
  • 115- memslap
  • 116- memerror
  • 117- PECL/Memcached
  • 118- Connecting, Instantiation
  • 119- Setting Client Behavior
  • 120- Putting and Retrieving Data
  • 121- Append and Prepend
  • 122- Delete
  • 123- Increment and Decrement
  • 124- Multi-get
  • 125- Multi-set
  • 126- Cache Locality Using byKey Methods and Multi get/set
  • 127- GetDelayed
  • 128- CAS
  • 129- Statistics
  • 130- Server List
  • 131- Error Handling
  • 132- Practical Caching
  • 133- Memcached Proxy: Moxi
  • 134- Other "Memcapable" Key-Value Stores
  • 135- Tokyo Tyrant
  • 136- Summary
  • 137- Memcached and MySQL
  • 138- The Memcached Functions for MySQL
  • 139- How the Memcached Functions for MySQL Work
  • 140- Installing the Memcached Functions for MySQL
  • 141- Prerequisites
  • 142- Configure the Source
  • 143- Build the Source
  • 144- Install the UDF
  • 145- Checking Installation
  • 146- Using the Memcached Functions for MySQL
  • 147- Establishing a Connection to the Memcached Server
  • 148- Data Setting Functions
  • 149- Data Fetching Functions
  • 150- Increment and Decrement
  • 151- Behavioral Functions
  • 152- Statistical Functions
  • 153- Version Functions
  • 154- Fun with Triggers (and UDFs)
  • 155- Read-Through Caching with Simple Select Statements
  • 156- Updates
  • 157- Summary
  • 158- Advanced MySQL
  • 159- Views
  • 160- Access Permissions
  • 161- Additional Information about Views
  • 162- Stored Procedures and Functions
  • 163- General Attributes
  • 164- Stored Routine Logic
  • 165- Using Stored Routines Privileges and Meta Data
  • 166- Extending Stored Routines
  • 167- Stored Routine Disadvantages
  • 168- User Defined Functions
  • 169- Triggers
  • 170- No Triggers
  • 171- Trigger Syntax
  • 172- Insert Triggers
  • 173- Update Triggers
  • 174- Delete Triggers
  • 175- Replace Triggers
  • 176- Trigger Permissions
  • 177- Transactions
  • 178- Atomicity
  • 179- Consistency
  • 180- Isolation
  • 181- Durability
  • 182- Implied Commit
  • 183- Replication
  • 184- Replication Purposes
  • 185- Replication Setup
  • 186- Testing MySQL Replication
  • 187- How Does MySQL Replication Work?
  • 188- Important Configuration Options
  • 189- Important Replication Commands
  • 190- Breaking Replication
  • 191- Using Replication Selectively
  • 192- The Issues with MySQL Replication
  • 193- The Benefits of MySQL Replication
  • 194- Events
  • 195- Creating Events
  • 196- Enabling the Events Scheduler
  • 197- Altering Events
  • 198- Event Privileges
  • 199- Event Meta Data
  • 200- Summary
  • 201- Extending MySQL with User-Defined Functions
  • 202- Introduction to UDFs
  • 203- Developing a UDF
  • 204- UDF Development Requirements
  • 205- UDF Required Functions
  • 206- A Practical UDF Example
  • 207- UDF High-Level Design
  • 208- Designing an Algorithm to Use for Your UDF
  • 209- Implementing the Program
  • 210- Building the UDF
  • 211- Installing the UDF
  • 212- Running Your New UDF
  • 213- Using a UDF with PHP
  • 214- Connecting and Disconnecting to MySQL
  • 215- Returning the Result Set Array
  • 216- Other UDF SQL Statements
  • 217- Debugging a UDF
  • 218- Attaching gdb to an Already Running Process
  • 219- Setting a BreakPoint and Stepping through Code
  • 220- Dealing with Literal Values
  • 221- Debugging Summary
  • 222- Summary
  • 223- Writing PHP Extensions
  • 224- Setting Up the Build Environment
  • 225- Creating an Extension with ext_skel
  • 226- Creating and Compiling Skeleton Code
  • 227- Using a Function Definitions File
  • 228- Generating Help Files
  • 229- Creating an Extension with CodeGen_PECL
  • 230- Creating the Basic XML File
  • 231- Defining Functions
  • 232- Defining Constants, INI Directives, and Globals
  • 233- Defining Objects, Methods, and Properties
  • 234- Variables in PHP Extensions
  • 235- Setting and Testing zvals
  • 236- Reading and Comparing zvals
  • 237- Dealing with Strings as zvals
  • 238- Advanced Memory Management
  • 239- Using Functions in Extensions
  • 240- Basic Definitions
  • 241- Using Arguments
  • 242- Defining Argument Information
  • 243- Returning Values
  • 244- Built-In Functions
  • 245- Creating and Consuming PHP API Functions
  • 246- More Notes and Creating Helper Functions
  • 247- Input/Output
  • 248- Standard Out
  • 249- Files and Streams
  • 250- Networking
  • 251- Errors and Warnings
  • 252- Arrays and Hash Tables
  • 253- Building and Accessing Arrays
  • 254- Accessing and Modifying Hash Tables
  • 255- Objects and Interfaces
  • 256- Creating a Class
  • 257- Interacting with Objects
  • 258- Constants, INI Directives, and Globals
  • 259- Constants
  • 260- Globals and INI Directives
  • 261- Describing an Extension
  • 262- Printing a Description
  • 263- Building a Table
  • 264- Specifying a Logo
  • 265- Summary
  • 266- Full-Text Searching
  • 267- MySQL Fulltext Indexes
  • 268- Using MySQL Fulltext Indexes
  • 269- MySQL Fulltext Index Issues
  • 270- A Better Solution: The Sphinx Full-Text Search Engine
  • 271- Sphinx Configuration and Installation
  • 272- Sphinx.conf Settings
  • 273- Starting Sphinx
  • 274- Searching Sphinx
  • 275- Delta Indexes
  • 276- Merging Indexes
  • 277- Developing Applications That Use Sphinx
  • 278- Sphinx and PHP
  • 279- Summary
  • 280- Multi-Tasking in PHP and MySQL
  • 281- Gearman
  • 282- What Is Gearman?
  • 283- Installing and Running Gearman
  • 284- Using the Gearman MySQL UDFs
  • 285- PHP and Gearman
  • 286- Narada: A Search Engine Application
  • 287- Obtaining Narada
  • 288- Narada Components
  • 289- Database Tables for the Search Engine Application
  • 290- Sphinx Setup
  • 291- Gearman Workers
  • 292- Index Page
  • 293- One Other Tidbit of Code
  • 294- The Big Picture
  • 295- Running Narada
  • 296- To-Do List for Narada
  • 297- Other Job Server Systems
  • 298- Summary
  • 299- Rewrite Rules
  • 300- Using Rewrite Rules
  • 301- Understanding the Purpose and Structure of Rewrite Rules
  • 302- Understanding and Controlling Rewrite Rule Flow
  • 303- Conditional Rules
  • 304- Logging and Optimization
  • 305- Rewrite Maps
  • 306- Built-In Maps
  • 307- Random and Text Lookups
  • 308- Using PHP and MySQL
  • 309- Summary
  • 310- User Authentication
  • 311- Designing the Database
  • 312- HTTP-Based Authentication
  • 313- Basic Authentication
  • 314- Digest Authentication
  • 315- Pure PHP Authentication
  • 316- Using PHP Sessions
  • 317- Building Secure Cookies
  • 318- Access Control Lists
  • 319- Summary
  • 320- Understanding the INFORMATION_SCHEMA
  • 321- Using the INFORMATION_SCHEMA
  • 322- Table Objects Tables
  • 323- Other Database Objects Tables
  • 324- MySQL Status Tables
  • 325- PROCESSLIST (5.1)
  • 326- SESSION_STATUS/GLOBAL_STATUS (5.1)
  • 327- SESSION_VARIABLES/GLOBAL_VARIABLES (5.1)
  • 328- MySQL Meta Data Tables
  • 329- CHARACTER_SETS
  • 330- COLLATIONS
  • 331- COLLATION_CHARACTER_SET_APPLICABILITY
  • 332- MySQL ACL Permissions Tables
  • 333- USER_PRIVILEGES
  • 334- SCHEMA_PRIVILEGES
  • 335- TABLE_PRIVILEGES
  • 336- COLUMN_PRIVILEGES
  • 337- INFORMATION_SCHEMA Extensions
  • 338- SHOW Cross Reference
  • 339- Summary
  • 340- Security
  • 341- Hardening Your MySQL Server
  • 342- Installation Defaults
  • 343- Operating System Security
  • 344- MySQL Security Permissions
  • 345- Additional Database Security
  • 346- Auditing
  • 347- Encoding Data
  • 348- Bi-directional Encoding
  • 349- Single-Directional Encoding
  • 350- PHP Security Recipes
  • 351- Protecting against SQL Injection
  • 352- Protecting against Replay Attacks
  • 353- Protecting against XSS
  • 354- Protecting against CSRF
  • 355- Automation Attacks
  • 356- Summary
  • 357- Command-Line and Web Services
  • 358- Creating Command-Line Scripts
  • 359- Reading Command-Line Input
  • 360- Prompting for Input
  • 361- Completed Classes
  • 362- Setting Up Cron Jobs
  • 363- Bonus: Output in Color
  • 364- Creating Web Services
  • 365- RESTful Web Services
  • 366- SOAP Web Services
  • 367- Getting Started with the SOAP Library
  • 368- Summary
  • 369- Optimization and Debugging
  • 370- Debugging PHP
  • 371- Creating Stack Traces
  • 372- Optimizing Queries
  • 373- Reducing SQL
  • 374- Identifying SQL Statements
  • 375- Optimizing SELECT
  • 376- Optimizing UPDATE
  • 377- Optimizing DELETE
  • 378- Optimizing INSERT
  • 379- Optimizing REPLACE
  • 380- INSERT ... ON DUPLICATE KEY UPDATE
  • 381- Debugging MySQL
  • 382- Error Log
  • 383- Slow Query Log
  • 384- Processlist
  • 385- Other Commands
  • 386- Using a Debugger with MySQL
  • 387- Summary
  • 388- Index

"Expert PHP and MySQL" Description:

The Open Library:

Looks at the techniques of creating applications using PHP with MySQL, with information on such topics as design patterns, complex queries, iterators, closures, caching, PHP extensions, and Sphinx.

Read “Expert PHP and MySQL”:

Read “Expert PHP and MySQL” by choosing from the options below.

Search for “Expert PHP and MySQL” downloads:

Visit our Downloads Search page to see if downloads are available.

Borrow "Expert PHP and MySQL" Online:

Check on the availability of online borrowing. Please note that online borrowing has copyright-based limitations and that the quality of ebooks may vary.

Find “Expert PHP and MySQL” in Libraries Near You:

Read or borrow “Expert PHP and MySQL” from your local library.

Buy “Expert PHP and MySQL” online:

Shop for “Expert PHP and MySQL” on popular online marketplaces.


Related Books

Related Ebooks

Source: The Open Library

E-Books

Related Ebooks from the Open Library and The Internet Archive.

1Expert PHP and MySQL - Ebook

Please note that the files availability may be limited due to copyright restrictions.
Check the files availability here, with more info and coverage.

“Expert PHP and MySQL - Ebook” Metadata:

  • Title: Expert PHP and MySQL - Ebook