1
0
mirror of https://github.com/php/doc-ja.git synced 2026-03-24 07:02:08 +01:00
Files

209 lines
6.8 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: d816a0fad6c458d9515f697cc89e26ca9d8069f5 Maintainer: takagi Status: ready -->
<!-- CREDITS: hirokawa,shimooka,mumumu -->
<refentry xml:id="function.intval" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>intval</refname>
<refpurpose>変数の整数としての値を取得する</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>intval</methodname>
<methodparam><type>mixed</type><parameter>value</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>base</parameter><initializer>10</initializer></methodparam>
</methodsynopsis>
<para>
指定された値 <parameter>base</parameter> を基数(デフォルトは 10とする、
<parameter>value</parameter><type>int</type> としての値を返します。
オブジェクトに <function>intval</function> を使用することはできません。
その場合は <constant>E_WARNING</constant> レベルのエラーを発して 1 を返します。
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>value</parameter></term>
<listitem>
<para>
整数に変換するスカラー値
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>base</parameter></term>
<listitem>
<para>
変換のための基数
</para>
<note>
<para>
<parameter>base</parameter> が 0 の場合は、
<parameter>value</parameter> のフォーマットに基づいて利用する基数を決めます。
<itemizedlist>
<listitem>
<simpara>
文字列の先頭が "0x" (あるいは "0X") の場合は、基数を 16 (十六進数) とします。
</simpara>
</listitem>
<listitem>
<simpara>
文字列の先頭が "0b" (あるいは "0B") の場合は、基数を 2 (二進数) とします。
</simpara>
</listitem>
<listitem>
<simpara>
文字列の先頭が "0" の場合は、基数を 8 (八進数) とします。
</simpara>
</listitem>
<listitem>
<simpara>
それ以外の場合は、基数を 10 (十進数) とします。
</simpara>
</listitem>
</itemizedlist>
</para>
</note>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
成功時は <parameter>value</parameter> の整数値、失敗時は 0。
空の配列の場合は 0、空でない配列の場合は
1 を返します。
</para>
<para>
最大値はシステムに依存します。32 ビットシステムでは、
最大の符号付き整数の範囲 -2147483648 2147483647 となります。
このため、そのようなシステムでは <literal>intval('1000000000000')</literal>
は 2147483647 を返します。
64 ビットシステムにおける最大の符号付き整数は 9223372036854775807
となります。
</para>
<para>
文字列の場合、文字列の最左の文字に依存しますが、ほとんどの場合で 0
を返します。
<link linkend="language.types.integer.casting">整数への変換</link>
の一般的なルールが適用されます。
</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.0.0</entry>
<entry>
オブジェクトを指定して変換しようとした場合のエラーレベルが、
<constant>E_NOTICE</constant> から <constant>E_WARNING</constant>
に変更されました。
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>intval</function> の例</title>
<para>
以下の例は 64 ビットシステムに基づきます。
</para>
<programlisting role="php">
<![CDATA[
<?php
echo intval(42), PHP_EOL; // 42
echo intval(4.7), PHP_EOL; // 4
echo intval('42'), PHP_EOL; // 42
echo intval('+42'), PHP_EOL; // 42
echo intval('-42'), PHP_EOL; // -42
echo intval(042), PHP_EOL; // 34
echo intval('042'), PHP_EOL; // 42
echo intval(1e10), PHP_EOL; // 10000000000
echo intval('1e10'), PHP_EOL; // 10000000000
echo intval(0x1A), PHP_EOL; // 26
echo intval('0x1A'), PHP_EOL; // 0
echo intval('0x1A', 0), PHP_EOL; // 26
echo intval(42000000), PHP_EOL; // 42000000
echo intval(420000000000000000000), PHP_EOL; // -4275113695319687168
echo intval('420000000000000000000'), PHP_EOL; // 9223372036854775807
echo intval(42, 8), PHP_EOL; // 42
echo intval('42', 8), PHP_EOL; // 34
echo intval(array()), PHP_EOL; // 0
echo intval(array('foo', 'bar')), PHP_EOL; // 1
echo intval(false), PHP_EOL; // 0
echo intval(true), PHP_EOL; // 1
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
パラメータ <parameter>base</parameter> はパラメータ
<parameter>value</parameter> が文字列でない限り意味がありません。
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>boolval</function></member>
<member><function>floatval</function></member>
<member><function>strval</function></member>
<member><function>settype</function></member>
<member><function>is_numeric</function></member>
<member><link linkend="language.types.type-juggling">型の相互変換</link></member>
<member><link linkend="ref.bc">BCMath任意精度数学関数</link></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
-->