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 151 152 153 154 155
|
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.gmp-init" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>gmp_init</refname>
<refpurpose>Create GMP number</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>GMP</type><methodname>gmp_init</methodname>
<methodparam><type class="union"><type>int</type><type>string</type></type><parameter>num</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>base</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Creates a GMP number from an integer or string.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>num</parameter></term>
<listitem>
<simpara>
An integer or a string. The string representation can be decimal,
hexadecimal, octal, or binary.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>base</parameter></term>
<listitem>
<simpara>
The base to use for converting a <type>string</type> representation.
</simpara>
<simpara>
An explicit base can be between <literal>2</literal> and <literal>62</literal>.
For bases up to <literal>36</literal>, case is ignored;
upper-case and lower-case letters have the same value.
For bases <literal>37</literal> to <literal>62</literal>,
upper-case letter represent the values <literal>10</literal> to
<literal>35</literal> and lower-case letter represent the values
<literal>36</literal> to <literal>61</literal>.
</simpara>
<simpara>
If <parameter>base</parameter> is <literal>0</literal> then the actual
base is determined from the leading characters of <parameter>num</parameter>.
If the first two characters are <literal>0x</literal> or <literal>0X</literal>,
the string is interpreted as a hexadecimal integer.
If the first two characters are <literal>0b</literal> or <literal>0B</literal>,
the string is interpreted as a binary integer.
If the first two characters are <literal>0o</literal> or <literal>0o</literal>,
the string is interpreted as an octal integer.
Moreover, if the first character is <literal>0</literal> the string
is also interpreted as an octal integer.
In all other cases, the string is interpreted as a decimal integer.
</simpara>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&gmp.return;
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.1.0</entry>
<entry>
Support for explicit octal prefixes <literal>0o</literal> and
<literal>0o</literal> has been added for <parameter>num</parameter> strings.
Interpretation of such prefixes when <parameter>base</parameter> is
<literal>0</literal> has also been added.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Creating GMP number</title>
<programlisting role="php">
<![CDATA[
<?php
$a = gmp_init(123456);
$b = gmp_init("0xFFFFDEBACDFEDF7200");
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
It is not necessary to call this function in order to use integers or
strings in place of GMP numbers in GMP functions (such as with
<function>gmp_add</function>). Function arguments are automatically
converted to GMP numbers, if such conversion is possible and needed, using
the same rules as <function>gmp_init</function>.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><methodname>GMP::__construct</methodname></member>
</simplelist>
</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
-->
|