<?xml version="1.0" encoding="utf-8"?> <!-- $Revision$ --> <refentry xml:id="function.phpversion" xmlns="http://docbook.org/ns/docbook"> <refnamediv> <refname>phpversion</refname> <refpurpose>Gets the current PHP version</refpurpose> </refnamediv> <refsect1 role="description"> &reftitle.description; <methodsynopsis> <type>string</type><methodname>phpversion</methodname> <methodparam choice="opt"><type>string</type><parameter>extension</parameter></methodparam> </methodsynopsis> <para> Returns a string containing the version of the currently running PHP parser or extension. </para> </refsect1> <refsect1 role="parameters"> &reftitle.parameters; <para> <variablelist> <varlistentry> <term><parameter>extension</parameter></term> <listitem> <para> An optional extension name. </para> </listitem> </varlistentry> </variablelist> </para> </refsect1> <refsect1 role="returnvalues"> &reftitle.returnvalues; <para> If the optional <parameter>extension</parameter> parameter is specified, <function>phpversion</function> returns the version of that extension, or &false; if there is no version information associated or the extension isn't enabled. </para> </refsect1> <refsect1 role="examples"> &reftitle.examples; <para> <example> <title><function>phpversion</function> example</title> <programlisting role="php"> <![CDATA[ <?php // prints e.g. 'Current PHP version: 4.1.1' echo 'Current PHP version: ' . phpversion(); // prints e.g. '2.0' or nothing if the extension isn't enabled echo phpversion('tidy'); ?> ]]> </programlisting> </example> </para> <para> <example> <title><constant>PHP_VERSION_ID</constant> example and usage</title> <programlisting role="php"> <![CDATA[ <?php // PHP_VERSION_ID is available as of PHP 5.2.7, if our // version is lower than that, then emulate it if (!defined('PHP_VERSION_ID')) { $version = explode('.', PHP_VERSION); define('PHP_VERSION_ID', ($version[0] * 10000 + $version[1] * 100 + $version[2])); } // PHP_VERSION_ID is defined as a number, where the higher the number // is, the newer a PHP version is used. It's defined as used in the above // expression: // // $version_id = $major_version * 10000 + $minor_version * 100 + $release_version; // // Now with PHP_VERSION_ID we can check for features this PHP version // may have, this doesn't require to use version_compare() everytime // you check if the current PHP version may not support a feature. // // For example, we may here define the PHP_VERSION_* constants thats // not available in versions prior to 5.2.7 if (PHP_VERSION_ID < 50207) { define('PHP_MAJOR_VERSION', $version[0]); define('PHP_MINOR_VERSION', $version[1]); define('PHP_RELEASE_VERSION', $version[2]); // and so on, ... } ?> ]]> </programlisting> </example> </para> </refsect1> <refsect1 role="notes"> &reftitle.notes; <note> <para> This information is also available in the predefined constant <constant>PHP_VERSION</constant>. More versioning information is available using the <constant>PHP_VERSION_*</constant> constants. </para> </note> </refsect1> <refsect1 role="seealso"> &reftitle.seealso; <para> <simplelist> <member><link linkend="reserved.constants.core">PHP_VERSION constants</link></member> <member><function>version_compare</function></member> <member><function>phpinfo</function></member> <member><function>phpcredits</function></member> <member><function>php_logo_guid</function></member> <member><function>zend_version</function></member> </simplelist> </para> </refsect1> </refentry> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"~/.phpdoc/manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 -->