php the good parts

176 885 0
php the good parts

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

www.it-ebooks.info www.it-ebooks.info PHP: The Good Parts Peter B. MacIntyre Beijing • Cambridge • Farnham • Köln • Sebastopol • Taipei • Tokyo www.it-ebooks.info PHP: The Good Parts by Peter B. MacIntyre Copyright © 2010 Peter B. MacIntyre. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://my.safaribooksonline.com). For more information, contact our corporate/institutional sales department: 800-998-9938 or corporate@oreilly.com. Editor: Julie Steele Production Editor: Adam Zaremba Copyeditor: Amy Thomson Proofreader: Adam Zaremba Indexer: Seth Maislin Cover Designer: Karen Montgomery Interior Designer: David Futato Illustrator: Robert Romano Printing History: April 2010: First Edition. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are registered trademarks of O’Reilly Media, Inc. PHP: The Good Parts, the image of a Booted Racket-tail, and related trade dress are trademarks of O’Reilly Media, Inc. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and O’Reilly Media, Inc. was aware of a trademark claim, the designations have been printed in caps or initial caps. While every precaution has been taken in the preparation of this book, the publisher and author assume no responsibility for errors or omissions, or for damages resulting from the use of the information con- tained herein. TM This book uses RepKover™, a durable and flexible lay-flat binding. ISBN: 978-0-596-80437-4 [M] 1270572274 www.it-ebooks.info I dedicate this book to my wonderful wife, Dawn Etta Riley. I love you! www.it-ebooks.info www.it-ebooks.info Table of Contents Foreword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii 1. The Good Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Why PHP? 1 A Brief History of PHP 1 PHP’s Place in the World 2 What Is PHP? 2 What Has Been Accomplished with PHP? 2 Basic PHP Setup 3 2. Casing the Joint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Whitespace, Comments, and Basic Syntax 7 Variables: Data Types, Loose Typing, and Scope 9 Defined Constants 11 Expressions 13 Decisions, Decisions (Flow Control) 13 If Else 14 Switch Case 16 While 18 For 19 Integration with Web Pages 19 Cookies 20 Sessions 21 $_GET 22 $_POST 23 $_REQUEST 24 3. Functions (Doing It Once) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Parameter Passing 27 v www.it-ebooks.info Default Parameters 29 Passing by Value Versus Passing by Reference 30 Include and Require 31 Built-In Functions Versus UDFs 32 4. Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 What Is a String? 33 You Can Quote Me 34 String Functions (Best of) 36 String Trimmings 36 Character Case Management 38 String Content Searching 39 String Modification 40 5. Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Indexed Arrays 45 Associative Arrays 46 Arrays from Another Dimension 47 Arrays Can Be Dynamic 48 Traversing Arrays 50 Array Functions (Best of) 51 Sorting Arrays 51 Math-Type Functions 53 Array Potpourri 54 6. Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Putting It into Practice 60 Magic Methods 65 $this 66 Objects in Action 67 Public, Protected, and Private 68 Getters and Setters 69 7. Database Interaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 MySQLi Object Interface 71 Retrieving Data for Display 73 PHP Data Objects 74 PDO Prepared Statements 75 Data Management on the Cheap 77 SQLite 77 File Management As a Database Alternative 79 vi | Table of Contents www.it-ebooks.info 8. PHP and Friends . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Email/SMS Generation 89 PDF Generation 92 Constructor Method and Basic Document Options 96 Adding Document Headers and Footers 96 Adding Images and Links 97 Adding a Watermark 101 Dynamic PDFs and Table Display 102 Graphical Reports Generation 105 Pie Charts 105 Bar Charts 107 Captchas 109 9. PHP Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Data Validation 111 Escape Output 113 Cross-Site Scripting (XXS) and SQL Injection 115 Password Encryption Security 116 Security Tips 117 10. PHP 5.3 Good Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 Namespaces 119 Closures (Anonymous Functions) 122 NOWDOC 123 goto Operator 124 DateTime and DateTimeZone Classes 126 Additional 5.3 Features 131 11. Advanced Goodness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Regular Expressions 133 String Matching 133 String Substituting 135 String Splitting 135 SimpleXML 136 Integrated Development Environments 138 Komodo by ActiveState 139 Zend Studio for Eclipse 139 PhpED by NuSphere 140 Primary Websites 140 php.net 140 zend.com 141 devzone.zend.com 141 phparch.com 143 Table of Contents | vii www.it-ebooks.info PHP/Web Conferences 143 Appendix: The Bad Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 viii | Table of Contents www.it-ebooks.info [...]... sense The value within the brackets is the item being tested, followed by each value for the case that you want to evaluate Finally, if there are other possible values, encase them within the default section The break statements are optional, but if you don’t use them, PHP will continue to evaluate all the other possible values and may execute some code further down the case tree, so be careful to use the. .. and setting values The code for doing this is one line, like so: < ?php phpinfo() ; ?> The way to start and stop PHP content is with the < ?php text sequence and the ?> text sequence, respectively, but more on that in the next chapter For now, save this code in your web root folder (usually www or htdocs) as phpinfo .php When you enter http: //localhost/phpinfo .php in the browser, the output should resemble... write a little code here to do the proverbial worldwide greeting Open a file called HelloOutThere .php under the document root—typically, this is /var/www/ in Linux or /apache2/htdocs in Windows—and enter the following code: < ?php echo "Hello, is there anybody out there?" ; ?> Then enter the following into the browser’s address field: http://localhost/HelloOut There .php The result should be a browser... text So, the basic syntax of a PHP statement includes an opening PHP designation tag [< ?php or ] These tags allow the web server to determine which portions of the file should be handed over to PHP Use of the shorter open tag format . www.it-ebooks.info www.it-ebooks.info PHP: The Good Parts Peter B. MacIntyre Beijing • Cambridge • Farnham • Köln • Sebastopol • Taipei • Tokyo www.it-ebooks.info PHP: The Good Parts by Peter B. MacIntyre Copyright. we need yet another book on PHP? And why, now, is it relevant to point out the good parts? ” Well, this is not just any book, and this is not just any time in the life of PHP. PHP is gaining. xiii 1. The Good Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Why PHP? 1 A Brief History of PHP 1 PHP s Place in the World

Ngày đăng: 24/04/2014, 15:45

Từ khóa liên quan

Mục lục

  • Oreilly - PHP the Good Parts (2010)

  • Table of Contents

  • Foreword

  • Preface

    • Conventions Used in This Book

    • Using Code Examples

    • How to Contact Us

    • Safari® Books Online

    • Acknowledgments

    • Chapter 1. The Good Parts

      • Why PHP?

        • A Brief History of PHP

        • PHP’s Place in the World

        • What Is PHP?

        • What Has Been Accomplished with PHP?

        • Basic PHP Setup

        • Chapter 2. Casing the Joint

          • Whitespace, Comments, and Basic Syntax

          • Variables: Data Types, Loose Typing, and Scope

          • Defined Constants

          • Expressions

          • Decisions, Decisions (Flow Control)

            • If...Else...

            • Switch...Case...

            • While...

Tài liệu cùng người dùng

Tài liệu liên quan