1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
|
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.base-convert" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>base_convert</refname>
<refpurpose>Convert a number between arbitrary bases</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>string</type><methodname>base_convert</methodname>
<methodparam><type>string</type><parameter>num</parameter></methodparam>
<methodparam><type>int</type><parameter>from_base</parameter></methodparam>
<methodparam><type>int</type><parameter>to_base</parameter></methodparam>
</methodsynopsis>
<para>
Returns a string containing <parameter>num</parameter>
represented in base <parameter>to_base</parameter>. The base in
which <parameter>num</parameter> is given is specified in
<parameter>from_base</parameter>. Both
<parameter>from_base</parameter> and <parameter>to_base</parameter>
have to be between 2 and 36, inclusive. Digits in numbers with a
base higher than 10 will be represented with the letters a-z,
with a meaning 10, b meaning 11 and z meaning 35.
The case of the letters doesn't matter, i.e.
<parameter>num</parameter> is interpreted case-insensitively.
</para>
<warning>
<simpara>
<function>base_convert</function> may lose precision on large numbers
due to properties related to the internal <type>float</type> type used.
Please see the <link linkend="language.types.float">Floating point numbers</link>
section in the manual for more specific information and limitations.
</simpara>
</warning>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>num</parameter></term>
<listitem>
<para>
The number to convert. Any invalid characters in
<parameter>num</parameter> are silently ignored.
As of PHP 7.4.0 supplying any invalid characters is deprecated.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>from_base</parameter></term>
<listitem>
<para>
The base <parameter>num</parameter> is in
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>to_base</parameter></term>
<listitem>
<para>
The base to convert <parameter>num</parameter> to
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
<parameter>num</parameter> converted to base <parameter>to_base</parameter>
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>7.4.0</entry>
<entry>
Passing invalid characters will now generate a deprecation notice.
The result will still be computed as if the invalid characters did not exist.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>base_convert</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
$hexadecimal = 'a37334';
echo base_convert($hexadecimal, 16, 2);
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
101000110111001100110100
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>intval</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
-->
|