Rev 30 | Blame | Compare with Previous | Last modification | View Log | RSS feed
Thrift PHP Software LibraryLicense=======Licensed to the Apache Software Foundation (ASF) under oneor more contributor license agreements. See the NOTICE filedistributed with this work for additional informationregarding copyright ownership. The ASF licenses this fileto you under the Apache License, Version 2.0 (the"License"); you may not use this file except in compliancewith the License. You may obtain a copy of the License athttp://www.apache.org/licenses/LICENSE-2.0Unless required by applicable law or agreed to in writing,software distributed under the License is distributed on an"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANYKIND, either express or implied. See the License for thespecific language governing permissions and limitationsunder the License.Using Thrift with PHP=====================Thrift requires PHP 5. Thrift makes as few assumptions about your PHPenvironment as possible while trying to make some more advanced PHPfeatures (i.e. APC cacheing using asbolute path URLs) as simple as possible.To use Thrift in your PHP codebase, take the following steps:#1) Copy all of thrift/lib/php/src into your PHP codebase#2) Set $GLOBALS['THRIFT_ROOT'] to the path you installed Thrift#3) include_once $GLOBALS['THRIFT_ROOT'].'/Thrift.php';Note that #3 must be done before including any other Thrift files.If you do not do #2, Thrift.php will set this global for you, but it will bedone using dirname(__FILE__), which is less efficient than providing the staticstring yourself.When you generate a Thrift package using the compiler, it makes an assumptionabout where your generated code will live. If your file is "MyPackage.thrift",the generated files must be installed into:$GLOBALS['THRIFT_ROOT'].'/packages/MyPackage/';This allows the code generator to compile your code without any extra flagsfor the target directory names while still allowing your include paths tobe absolute (if you have an absolute THRIFT_ROOT).Dependencies============PHP_INT_SIZEThis built-in signals whether your architecture is 32 or 64 bit and isused by the TBinaryProtocol to properly use pack() and unpack() toserialize data.apc_fetch(), apc_store()APC cache is used by the TSocketPool class. If you do not have APC installed,Thrift will fill in null stub function definitions.