<<toc></toc>>
Whenever possible Flourish is coded to support any server with at least the default extensions and PHP 5.1.0 or greater. Here is a list of the default extensions used throughout the code:
- <a href="http://php.net/ctype" target="_blank">ctype</a> - <a href="http://php.net/iconv" target="_blank">iconv</a> - <a href="http://php.net/pcre" target="_blank">pcre</a> - <a href="http://php.net/session" target="_blank">session</a> - <a href="http://php.net/spl" target="_blank">spl</a>
It is possible to disable these extensions when compiling PHP, so you will need to ensure each is installed. The simplest way is to look at the output of a script with the following contents:
Beyond the Flourish-wide requirements there are a few non-default security- related extensions that are required for specific features. Below is a list of classes/methods and what they require.
|| Classes/Methods || Extensions Required || || fCrytography::publicKeyEncrypt(), fCryptography::publicKeyDecrypt() || openssl || || fCrytography::publicKeySign(), fCryptography::publicKeyVerify() || openssl || || fCrytography::symmetricKeyEncrypt(), fCryptography::symmetricKeyDecrypt() || mcrypt || || fEmail::sign(), fEmail::encrypt() || openssl || || fSMTP::__construct() with the `$secure` flag || openssl ||
A few of the Flourish classes provide pure PHP implementations of functionality that is also available from extensions that are not installed by default. Below is a list of the classes and the extension that will provide better performance.
|| Class || Extension || || fJSON || json (included in 5.2 by default) || || fNumber/fMoney || bcmath || || fUTF8 || mbstring ||