1. Trang chủ
  2. » Công Nghệ Thông Tin

Zend Framework Web Services doc

244 742 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 244
Dung lượng 3,15 MB

Nội dung

Zend Framework Web Services A php|architect Guide by Jonas Mariën Zend F r a m e w o r k W e b Services Co nte nts C opy r i gh t ©2010–2011 J o n a s M ar iën – All Rights R e s e r v e d Book and cover layout, design and text Copyright ©2004-2011 Blue P a r a b o l a , LLC. and its predecessors – All Rights R e s e r v e d First Edition: March 2011 ISBN: 978-0-98-103455-3 Pr odu ced in Ca nad a Pr in ted in the U n i t e d S t a t e s N o part of this book may be r e p r o d uc e d , stored in a r e t ri e v al system, or transmitted in any form or b y means without the prior written permission of the publisher, except in the case of brief quotations embedded in critical r e v ie w s or articles. D i s c l ai me r Although every effort has been made in the preparation of this book to ensure the accuracy of the information contained therein, this book is provided ”as-is” and the publisher, the author(s), their distributors and re ta i l e r s , as well as all affiliated, r e l a t ed or subsidiary parties take no r e s p o n s ib il i t y for any inaccuracy and any and all damages caused, either directly or indirectly, b y the use of such information. W e have endeavoured to properly provide trademark information on all companies and products mentioned in the book b y the appropriate use of capitals. H o w e v e r , we cannot guarantee the accuracy of such information. Bl ue P a r a b o l a , The Bl u e P a r a b o l a logo, php|architect, the php|architect logo, N a n o B o o k and the N a n o B o o k logo are trademarks or r e g is te re d trademarks of Bl ue P a r a b o l a , LLC, its assigns, partners, predecessors and successors. W r i t t e n b y J o n a s Mariën Pu b l i s h e d b y Blue P a r a b o l a , LLC. 28 Bombay A v e . T o r o n t o , ON M3H 1B7 Canada (416) 630-6202 / (877) 630-6202 info@phparch.com / www.phparch.com Pu b l i s h e r Marco T a b i n i T e c h n i c a l Re v i e w e r Si m o n H a r r i s Copy Editor S t a n T y m o r e k and Lori Ann P a n n i e r Layout and Design Arbi Arzoumani M a n a g i n g Editor Elizabeth T u c k e r Long F i n an ce and R e s o u r c e M a n a g e m e n t Emanuela C orso Download from Wow! eBook <www.wowebook.com> Download from Wow! eBook <www.wowebook.com> Download from Wow! eBook <www.wowebook.com> C o n t e n t s Chapter 1 — Zend F r a m e w o r k 3 I n t r o d u c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Why Zend F r a m e w o r k ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Development Environment S e t up . . . . . . . . . . . . . . . . . . . . . . . . . 5 Bootstrap the P r o j e c t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Chapter 2 — Our D a t a 15 The C u s t o m e r . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Their C a s e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 The Database S t r u c t u r e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 The M e t h o d s for the W e b S e r v i c e . . . . . . . . . . . . . . . . . . . . . . . . . . 18 The Class C o d e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 C u s t o m e r R e q u i r e m e n t s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Chapter 3 — SOAP 25 I n t r o d u c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 SOAP and P H P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 First C o n t a c t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Plenty of Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 U s i n g Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 S o a p P a r a m , S o a p V a r and Classmaps . . . . . . . . . . . . . . . . . . . . . . . 31 S o a p P a r a m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Download from Wow! eBook <www.wowebook.com> vi ” CONTENTS S o a p Va r and V a r i a b l e T y p e s . . . . . . . . . . . . . . . . . . . . . . . . . . 32 P e r s i s t e n c e and C o o k i e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Enter WSDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Classmaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Error H a n d l i n g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 SOAP and Zend F r a m e w o r k . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Zend_Soap_Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Zend_Soap_Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Zend_Soap_Wsdl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Zend_Soap_AutoDiscover . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Example C o d e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Option 1: S e p ar a t e Bootstrap C o d e in a S e p a r a t e P H P File . . . . . . . . 49 Option 2: W r a p it I n s i d e a C o n t r o l l e r . . . . . . . . . . . . . . . . . . . . . 50 Extending Zend_Soap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 P u b l i c and P r i v a t e W e b Se r v i c e s . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Logging, V e r s i o n i n g , R e s p o n s e and Error C o d e s . . . . . . . . . . . . . . 56 Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 V e r s i o n i n g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Error C o d e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Chapter 4 — C u s t o m i z i n g Our SOAP Service 61 I n t r o d u c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 S o l u t i o n 1: A d d an API K e y P a r a m e t e r to Each M e t h o d . . . . . . . . . . . . . 61 P r o and C o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 S o l u t i o n 2: P r e - p a r s e the SOAP M e s s a g e . . . . . . . . . . . . . . . . . . . . . 63 P r o s and C o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 S o l u t i o n 3: U s e M a g i c M e t h o d s . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 P r o s and C o n s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Chapter 5 — REST 73 I n t r o d u c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 S o m e B a c k g r o u n d on REST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Download from Wow! eBook <www.wowebook.com> CONTENTS ” vii REST versus POX versus RPC versus P u r e REST . . . . . . . . . . . . . . . . . 77 REST and P H P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Creating the REST S e r v i c e U s i n g Zend F r a m e w o r k . . . . . . . . . . . . . . . 86 Zend_Rest_Route . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 Zend_Rest_Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Zend_Http_Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 S o m e Example C o d e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 C u s t o m i z e the REST Se r v i c e . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 API V e r s i o n in the URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 API K e y and P r e p r o c e s s i n g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Chapter 6 — XML-RPC 113 I n t r o d u c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 system.listMethods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 system.methodSignature . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 system.methodHelp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 system.multicall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 XML-RPC and P H P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 Creating the XML-RPC S e r v i c e U s i n g Zend F r a m e w o r k . . . . . . . . . . 124 Zend_XmlRpc_Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 Zend_XmlRpc_Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 M o r e Zend_XmlRpc_Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 M u l t i p l e N a m e s p a c e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 F a u l t c o d e s and Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . 129 C a c h i n g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 XML Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 C u s t o m i z i n g the XML-RPC S e r v i c e . . . . . . . . . . . . . . . . . . . . . 131 API version in the URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 API K e y and P r e - p r o c e s s i n g . . . . . . . . . . . . . . . . . . . . . . . . . . 132 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Download from Wow! eBook <www.wowebook.com> viii ” CONTENTS Chapter 7 — JSON-RPC 137 I n t r o d u c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 S t r e a m s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 R e q u e s t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 R e s p o n s e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 Error Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 B a t c h e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 JSON-RPC and P H P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Zend_Json_Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 Zend_Json_Server_Smd . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 C o n n e c t i n g from J a v a S c r i p t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 What is M i s s i n g ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 C u s t o m i z e the JSON-RPC S e r v i c e . . . . . . . . . . . . . . . . . . . . . . . . . 148 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Chapter 8 — Limiting A cc e s s using Zend_Acl 151 R e s o u r c e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 R o l e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 R u l e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 P r i v i l e g e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Where to S t o r e the R u l e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 H o w to U s e Zend_Acl in our W e b S e r v i c e Co d e . . . . . . . . . . . . . . . . . . 162 A d d Checks to Existing Se r v i c e s . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 SOAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 REST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 XML-RPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 JSON-RPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 Chapter 9 — P e r f o r m a n c e and Scaling 173 I n t r o d u c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Where to S e a rc h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 N e t w o r k . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 S e r v e r H a r d w a r e and T i e r e d S et u p . . . . . . . . . . . . . . . . . . . . . . 174 Download from Wow! eBook <www.wowebook.com> CONTENTS ” ix Operating S y s t e m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 W e b S e r v e r . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 C o d e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 H o w to Detect Bottlenecks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 M o n i t o r i n g T o o l s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 M e a s u r e m e n t and Benchmarks . . . . . . . . . . . . . . . . . . . . . . . . 180 Detecting C o d e I s s u e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 A d d S o m e C a c h i n g . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Chapter 10 — U n i t T e s t i n g 187 I n t r o d u c t i o n and B a c k g r o u n d . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 Enter P H P Un i t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 T e s t Fixt ures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 T e s t C a s e s and T e s t S u i t e s . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Assertions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 M o c k s and S t u b s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 M o c k i n g W e b S e r v i c e s U s i n g P H P U n i t . . . . . . . . . . . . . . . . . . . . . . . 196 T e s t i n g the SOAP S e r v i c e S e t u p and a B a s i c C a l l . . . . . . . . . . . . . . . . . 196 T e s t i n g the REST S e r v e r R e s p o n s e . . . . . . . . . . . . . . . . . . . . . . . . . 197 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Chapter 11 — Security 203 I n t r o d u c t i o n and B a c k g r o u n d . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 C o u n t e r m e a s u r e s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 U s e a Fire wal l . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 U s e A d d i t i o n a l A p a c h e M o d u l e s . . . . . . . . . . . . . . . . . . . . . . . 205 Check your W e b S e r v e r . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 Check and A d a p t Y o u r C o d e . . . . . . . . . . . . . . . . . . . . . . . . . . 206 S e c u r i n g C o mm u n i c a ti o n . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 One S t e p F u r t h e r . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 Download from Wow! eBook <www.wowebook.com> 0 ” CONTENTS Chapter 12 — End-User Documentation 211 I n t r o d u c t i o n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 S u m m a r y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 Chapter 13 — C o n c l u s i o n 219 Chapter 14 — A p p e n d i c e s 221 A p p e n d i x A: Development Environment S e t u p . . . . . . . . . . . . . . . . . 221 Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 Debian/Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 F e d o r a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 C e n t O S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 M a c OS X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 Wi nd ows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 P H P Un i t and F r i e n d s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 M e m c a c h e d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 A p p e n d i x B: S p e c i fi c T o o l s U s e d . . . . . . . . . . . . . . . . . . . . . . . . . . 226 A p a c h e mod_rewrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 S t r e a m W r a p p e r s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 GET, POST, PUT, DELETE using cURL . . . . . . . . . . . . . . . . . . . . 228 S o c k e t s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 A p p e n d i x C: P o t e n t i a l I m p a c t of ZF M o v i n g to 2.0 . . . . . . . . . . . . . . . . 229 Download from Wow! eBook <www.wowebook.com> [...]... Wow! eBook Development Environment Setup 6 ” Zend Framework wget http:/ /framework .zend. com/releases/ZendFramework-1.10.2/ZendFramework -1.10.2-minimal.tar.gz tar zxvf ZendFramework-1.10.2-minimal.tar.gz mv ZendFramework-1.10.2-minimal/library mv ZendFramework-1.10.2-minimal/bin rm -rf ZendFramework-1.10.2-minimal The library/ directory contains all of the Zend Framework components... http:/ /framework .zend. com Download from Wow! eBook 4 ” Zend Framework Zend Framework ” 5 If you are a Zend Framework novice, going through the quick-start tutorial will be of great help and will introduce you to some key concepts in a very steady pace and comprehensive way Also, do note that a major new version of Zend Framework will be available in the coming months On the website... version of Zend Framework available at the time of writing will be used, which is currently version 1.10.2 Zend provides a choice of the full or minimal versions, with the latter containing only the library’s standard components, and this version will serve us well Download the framework from the Zend Framework website2 and unpack: mkdir -p /web/ zfws/ && cd /web/ zfws 2 http:/ /framework .zend. com Download... of the available frameworks for this book and Zend Framework seemed an obvious choice, at least to me For more information on Zend Framework, such as a detailed history and its positioning compared to other frameworks and solutions, there are plenty of online resources available Many of these are centered around the Zend Framework website1 Among other things, you will find the Zend Framework reference... many of them may be used separately or in conjunction with other frameworks and libraries Download from Wow! eBook Zend Framework Launched in 2006 by Zend Technologies, Inc - the company founded by the two original authors of the Zend Engine - Zend Framework quickly gained traction to become one of the better-known PHP frameworks At the time of writing, it has been adopted by a large... next level using frameworks like Zend Framework, Symfony, Solar, Kohana, CakePHP and many, many others Some of these frameworks are here to stay, while some will eventually disappear, and yet others will grow to an even more dominant position Zend Framework, given its pedigree and the quality of the code, is most likely here to stay All good and well, but is this the only reason that Zend Framework is... Zend Framework is chosen for a book on web services? Not at all Firstly, the components provided by the framework for web service creation are mature and well-designed They offer good integration with the rest of the framework and are comprehensively documented Secondly, the entire code is unit-tested and peer-reviewed Thirdly, there is no licensing fuss around Zend Framework: the code is created from... life Zend Framework development experience, you will be able to skim over this chapter very quickly If not, read it carefully and make sure you have everything working as it should before moving on Do not expect anything ground-breaking here This book will get to real life examples as quickly as possible, and we’ll keep this chapter short and clean Why Zend Framework? Zend Framework is a PHP framework. .. inside its own virtual host • all the Zend Framework files and application bootstrap code in place for our next steps 4 http://www.martinfowler.com/eaaCatalog/tableDataGateway.html Download from Wow! eBook Zend Framework ” 13 14 ” Zend Framework • MySQL ready and waiting for the database which we are to import Download from Wow! eBook So, let’s move forward to the... quick win and open it using web services connecting directly to the underlying MySQL database This example scenario provides context for the code and web services explained in the next chapters Their Case MTA has multiple sales channels: online web shops run by partners, retail stores and chains and finally a web shop where MTA sells toys under a separate brand name Partner websites want to be able to . Download the framework from the Zend F r a m e w o r k website 2 and unpack: mkdi r -p /web/ zfw s/ && cd /web/ zfws 2 http:/ /framework .zend. com Download. Zend Framework Web Services A php|architect Guide by Jonas Mariën Zend F r a m e w o r k W e b Services Co nte nts C opy r

Ngày đăng: 23/03/2014, 03:20