<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/language.types.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ja',
  ),
  'this' => 
  array (
    0 => 'language.types.type-juggling.php',
    1 => '型の相互変換',
    2 => '型の相互変換',
  ),
  'up' => 
  array (
    0 => 'language.types.php',
    1 => '型',
  ),
  'prev' => 
  array (
    0 => 'language.types.declarations.php',
    1 => '型宣言',
  ),
  'next' => 
  array (
    0 => 'language.variables.php',
    1 => '変数',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ja',
    'path' => 'language/types/type-juggling.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="language.types.type-juggling" class="sect1">
 <h2 class="title">型の相互変換</h2>

 <p class="simpara">
  PHP は変数宣言時に明示的な型定義を必要としません。
  型を定義しない場合、変数の型は保存する値によって決まります。
  これは、変数 <var class="varname">$var</var> に文字列を代入した場合、
  <var class="varname">$var</var> の型は文字列 (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
  になることを意味しています。
  その後、整数値を <var class="varname">$var</var> に代入すると、
  その変数の型は整数 (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>) になります。
 </p>

 <p class="para">
  コンテクスト(文脈)によっては、
  PHP が値を別の型に自動変換しようとすることがあります。
  自動変換が行われる異なるコンテクストが存在するのは、以下のとおりです:
  <ul class="itemizedlist">
   <li class="listitem">
    <span class="simpara">数値のコンテクスト</span>
   </li>
   <li class="listitem">
    <span class="simpara">文字列のコンテクスト</span>
   </li>
   <li class="listitem">
    <span class="simpara">論理コンテクスト</span>
   </li>
   <li class="listitem">
    <span class="simpara">整数と文字列のコンテクスト</span>
   </li>
   <li class="listitem">
    <span class="simpara">比較のコンテクスト</span>
   </li>
   <li class="listitem">
    <span class="simpara">関数のコンテクスト</span>
   </li>
  </ul>
 </p>

 <blockquote class="note"><p><strong class="note">注意</strong>: 
  <span class="simpara">
   値を別の型として解釈する必要がある場合でも、
   値そのものの型は <em>変わりません</em>。
  </span>
 </p></blockquote>

 <p class="simpara">
  変数を強制的にある特定の型として評価させたい場合は、
  <a href="language.types.type-juggling.php#language.types.typecasting" class="link">型キャスト</a> のセクションを参照ください。
  ある変数の型を変更したい場合は、<span class="function"><a href="function.settype.php" class="function">settype()</a></span> を参照ください。
 </p>

 <div class="sect2">
  <h3 class="title">数値のコンテクスト</h3>

  <p class="simpara">
   これは、
   <a href="language.operators.arithmetic.php" class="link">算術演算子</a>
   を使った場合です。
  </p>

  <p class="simpara">
   このコンテクストでは、
   オペランドのどちらかが <span class="type"><a href="language.types.float.php" class="type float">float</a></span> 
   (または整数と解釈できない場合) の場合か、
   両方のオペランドが <span class="type"><a href="language.types.float.php" class="type float">float</a></span> の場合、
   結果の型は <span class="type"><a href="language.types.float.php" class="type float">float</a></span> になります。
   そうでない場合、オペランドは整数として解釈され、
   結果の型も整数になります。
   PHP 8.0.0 以降では、いずれかのオペランドが解釈できない場合、
   <span class="classname"><a href="class.typeerror.php" class="classname">TypeError</a></span> がスローされます。
  </p>
 </div>

 <div class="sect2">
  <h3 class="title">文字列のコンテクスト</h3>

  <p class="simpara">
   これは、
   <span class="function"><a href="function.echo.php" class="function">echo</a></span>,
   <span class="function"><a href="function.print.php" class="function">print</a></span> や
   <a href="language.types.string.php#language.types.string.parsing" class="link">文字列中の変数のパース</a>、または
   <a href="language.operators.string.php" class="link">文字列演算子</a>
   を使った場合です。
  </p>

  <p class="simpara">
   値は文字列として解釈されます。
   文字列として解釈できない場合、
   <span class="classname"><a href="class.typeerror.php" class="classname">TypeError</a></span> がスローされます。
   PHP 7.4.0 より前のバージョンでは、
   <strong><code><a href="errorfunc.constants.php#constant.e-recoverable-error">E_RECOVERABLE_ERROR</a></code></strong> が発生していました。
  </p>
 </div>

 <div class="sect2">
  <h3 class="title">論理コンテクスト</h3>

  <p class="simpara">
   これは、
   制御構文や
   <a href="language.operators.comparison.php#language.operators.comparison.ternary" class="link">三項演算子</a>,
   <a href="language.operators.logical.php" class="link">論理演算子</a>
   を使った場合です。
  </p>

  <p class="simpara">
   値は論理値 (<span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span>) として解釈されます。
  </p>
 </div>

 <div class="sect2">
  <h3 class="title">整数と文字列のコンテクスト</h3>

  <p class="simpara">
   これは、
   <a href="language.operators.bitwise.php" class="link">ビット演算子</a>
   を使った場合です。
  </p>

  <p class="simpara">
   全てのオペランドが文字列の場合、
   結果の型も文字列になります。
   そうでない場合、
   オペランドは整数として解釈され、
   結果の型も整数になります。
   PHP 8.0.0 以降では、いずれかのオペランドが解釈できない場合、
   <span class="classname"><a href="class.typeerror.php" class="classname">TypeError</a></span> がスローされます。
  </p>
 </div>

 <div class="sect2">
  <h3 class="title">比較のコンテクスト</h3>

  <p class="simpara">
   これは、
   <a href="language.operators.comparison.php" class="link">比較演算子</a>
   を使った場合です。
  </p>

  <p class="simpara">
   このコンテクストで発生する型変換については、
   <a href="language.operators.comparison.php#language.operators.comparison.types" class="link">さまざまな型の比較表</a>
   に説明があります。
  </p>
 </div>

 <div class="sect2" id="language.types.type-juggling.function">
  <h3 class="title">関数のコンテクスト</h3>

  <p class="simpara">
   これは、値が型付きのパラメータ、型付きプロパティに渡された場合や、
   戻り値の型を宣言している関数から値が返される場合です。
  </p>

  <p class="para">
   このコンテクストでは、値はその型の値でなければなりません。
   これにはふたつ例外があります。
   ひとつめは値の型が <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> で、
   宣言されている型が <span class="type"><a href="language.types.float.php" class="type float">float</a></span> の場合、
   整数が浮動小数点に変換されることです。
   ふたつめは型が <em>スカラー型</em>、
   または値がスカラー型に変換可能な場合で、
   
   かつ型の自動変換モードが有効な場合(デフォルト)、
   スカラー型の値だけが別の変換可能なスカラー型に変換される可能性があることです。
   この振る舞いに関する詳細は、以下を参照ください:
  </p>

  <div class="warning"><strong class="warning">警告</strong>
   <p class="simpara">
    <a href="functions.internal.php" class="link">内部関数</a> は、<strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong> を自動的にスカラー型に変換します。
    この振る舞いは PHP 8.1.0 以降は <em>推奨されなくなっています</em>。
   </p>
  </div>

  <div class="sect3" id="language.types.type-juggling.function.simple">
   <h4 class="title">単一の型宣言における、型の自動変換</h4>
   <ul class="itemizedlist">
    <li class="listitem">
     <span class="simpara">
      論理型(<span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span>) が宣言されている場合: 値は <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span>  として解釈されます。
     </span>
    </li>
    <li class="listitem">
     <span class="simpara">
      整数型 (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>) が宣言されてい場合: <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> への変換が定義されている場合は、<span class="type"><a href="language.types.integer.php" class="type int">int</a></span> として解釈されます。たとえば、文字列が <a href="language.types.numeric-strings.php" class="link">数値形式</a> である場合です。
     </span>
    </li>
    <li class="listitem">
     <span class="simpara">
      <span class="type"><a href="language.types.float.php" class="type float">float</a></span> が宣言されている場合: <span class="type"><a href="language.types.float.php" class="type float">float</a></span> への変換が定義されている場合は、<span class="type"><a href="language.types.float.php" class="type float">float</a></span> として解釈されます。たとえば、文字列が <a href="language.types.numeric-strings.php" class="link">数値形式</a> である場合です。
     </span>
    </li>
    <li class="listitem">
     <span class="simpara">
      文字列 (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>) 型として宣言されている場合:  値は文字列として解釈されます。
     </span>
    </li>
   </ul>
  </div>

  <div class="sect3" id="language.types.type-juggling.function.union">
   <h4 class="title">union 型と型の自動変換</h4>
   <p class="para">
    <code class="literal">strict_types</code> が有効になっていない場合、
    スカラー型の宣言は、限られた暗黙の型変換が行われます。
    値の正確な型が union の一部に指定されていない場合、
    次の順に対象となる型が選択されます:

    <ol type="1">
     <li class="listitem">
      <span class="simpara">
       <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      </span>
     </li>
     <li class="listitem">
      <span class="simpara">
       <span class="type"><a href="language.types.float.php" class="type float">float</a></span>
      </span>
     </li>
     <li class="listitem">
      <span class="simpara">
       <span class="type"><a href="language.types.string.php" class="type string">string</a></span>
      </span>
     </li>
     <li class="listitem">
      <span class="simpara">
       <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span>
      </span>
     </li>
    </ol>

    正確な型が union の中に存在し、
    かつ値が PHP の既存の型チェックのセマンティクスによって型変換できる場合、
    その型が選択されます。
    そうでない場合、次の型を試そうとします。
   </p>

   <div class="caution"><strong class="caution">警告</strong>
    <p class="para">
     例外として、値が文字列で、int と float が union に含まれていた場合、
     型は既存の <a href="language.types.numeric-strings.php" class="link">数値形式の文字列</a> を解釈するセマンティクスによって決まります。
     たとえば、<code class="literal">&quot;42&quot;</code> の場合、
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> が選ばれますし、
     <code class="literal">&quot;42.0&quot;</code> の場合、<span class="type"><a href="language.types.float.php" class="type float">float</a></span> が選ばれます。
    </p>
   </div>

   <blockquote class="note"><p><strong class="note">注意</strong>: 
    <p class="para">
     上のリストに入っていない型については、
     暗黙の型変換が行われる対象ではありません。
     特に、暗黙のうちに
     <span class="type"><a href="language.types.null.php" class="type null">null</a></span>, <span class="type"><a href="language.types.singleton.php" class="type false">false</a></span>, <span class="type"><a href="language.types.singleton.php" class="type true">true</a></span>
     に変換されることはありません。
    </p>
   </p></blockquote>

   <div class="example" id="example-1">
    <p><strong>例1 union の型のひとつに変換される例</strong></p>
    <div class="example-contents">
<div class="annotation-interactive phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">// int|string<br /></span><span style="color: #0000BB">42    </span><span style="color: #007700">--&gt; </span><span style="color: #0000BB">42          </span><span style="color: #FF8000">// 正確に型が一致<br /></span><span style="color: #DD0000">"42"  </span><span style="color: #007700">--&gt; </span><span style="color: #DD0000">"42"        </span><span style="color: #FF8000">// 正確に型が一致<br /></span><span style="color: #007700">new </span><span style="color: #0000BB">ObjectWithToString </span><span style="color: #007700">--&gt; </span><span style="color: #DD0000">"Result of __toString()"<br />                      </span><span style="color: #FF8000">// オブジェクトは int と互換性がないので、文字列にフォールバック<br /></span><span style="color: #0000BB">42.0  </span><span style="color: #007700">--&gt; </span><span style="color: #0000BB">42          </span><span style="color: #FF8000">// float は int と互換性がある<br /></span><span style="color: #0000BB">42.1  </span><span style="color: #007700">--&gt; </span><span style="color: #0000BB">42          </span><span style="color: #FF8000">// float は int と互換性がある<br /></span><span style="color: #0000BB">1e100 </span><span style="color: #007700">--&gt; </span><span style="color: #DD0000">"1.0E+100"  </span><span style="color: #FF8000">// int には大きすぎる float なので、文字列にフォールバック<br /></span><span style="color: #0000BB">INF   </span><span style="color: #007700">--&gt; </span><span style="color: #DD0000">"INF"       </span><span style="color: #FF8000">// int には大きすぎる float なので、文字列にフォールバック<br /></span><span style="color: #0000BB">true  </span><span style="color: #007700">--&gt; </span><span style="color: #0000BB">1           </span><span style="color: #FF8000">// bool は int と互換性がある<br /></span><span style="color: #007700">[]    --&gt; </span><span style="color: #0000BB">TypeError   </span><span style="color: #FF8000">// 配列はint, string と互換性はない。<br />// int|float|bool<br /></span><span style="color: #DD0000">"45"    </span><span style="color: #007700">--&gt; </span><span style="color: #0000BB">45        </span><span style="color: #FF8000">// int の数値形式の文字列<br /></span><span style="color: #DD0000">"45.0"  </span><span style="color: #007700">--&gt; </span><span style="color: #0000BB">45.0      </span><span style="color: #FF8000">// float の数値形式の文字列<br /></span><span style="color: #DD0000">"45X"   </span><span style="color: #007700">--&gt; </span><span style="color: #0000BB">true      </span><span style="color: #FF8000">// 数値形式の文字列ではない。boolにフォールバック<br /></span><span style="color: #DD0000">""      </span><span style="color: #007700">--&gt; </span><span style="color: #0000BB">false     </span><span style="color: #FF8000">// 数値形式の文字列ではない。boolにフォールバック<br /></span><span style="color: #DD0000">"X"     </span><span style="color: #007700">--&gt; </span><span style="color: #0000BB">true      </span><span style="color: #FF8000">// 数値形式の文字列ではない。boolにフォールバック<br /></span><span style="color: #007700">[]      --&gt; </span><span style="color: #0000BB">TypeError </span><span style="color: #FF8000">// 配列はint, float, bool と互換性はない。<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </div>

 </div>

 <div class="sect2" id="language.types.typecasting">
  <h3 class="title">型キャスト</h3>

  <p class="simpara">
   型キャストは、変換しようとする型の名前を括弧で括り、
   キャストする変数の前に置くことで、値を別の型に変換するものです。
  </p>

  <div class="example" id="example-2">
   <p><strong>例2 型キャストの例</strong></p>
   <div class="example-contents">
<div class="annotation-interactive phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$foo </span><span style="color: #007700">= </span><span style="color: #0000BB">10</span><span style="color: #007700">;          </span><span style="color: #FF8000">// $foo は整数です<br /></span><span style="color: #0000BB">$bar </span><span style="color: #007700">= (bool) </span><span style="color: #0000BB">$foo</span><span style="color: #007700">; </span><span style="color: #FF8000">// $bar は boolean です<br /><br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$bar</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

  </div>

  <p class="simpara">
   使用可能なキャストを以下に示します:
  </p>

  <ul class="simplelist">
   <li><code class="literal">(int)</code> - 整数(<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>) へのキャスト</li>
   <li><code class="literal">(bool)</code> - 論理値(<span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span>) へのキャスト</li>
   <li><code class="literal">(float)</code> - <span class="type"><a href="language.types.float.php" class="type float">float</a></span> へのキャスト</li>
   <li><code class="literal">(string)</code> - 文字列(<span class="type"><a href="language.types.string.php" class="type string">string</a></span>) へのキャスト</li>
   <li><code class="literal">(array)</code> - 配列(<span class="type"><a href="language.types.array.php" class="type array">array</a></span>) へのキャスト</li>
   <li><code class="literal">(object)</code> - オブジェクト(<span class="type"><a href="language.types.object.php" class="type object">object</a></span>) へのキャスト</li>
   <li><code class="literal">(unset)</code> - <span class="type"><a href="language.types.null.php" class="type NULL">NULL</a></span> へのキャスト</li>
  </ul>

  <div class="warning"><strong class="warning">警告</strong>
   <p class="para">
    <code class="literal">(integer)</code> は、<code class="literal">(int)</code> のエイリアスです。
    <code class="literal">(boolean)</code> は、<code class="literal">(bool)</code> のエイリアスです。
    <code class="literal">(binary)</code> は、<code class="literal">(string)</code> のエイリアスです。
    <code class="literal">(double)</code> と <code class="literal">(real)</code> は、<code class="literal">(float)</code> のエイリアスです。
    これらのキャストは、正規化された型の名前を使っていません。
    そのため PHP 8.5.0 以降では推奨されなくなりました。
   </p>
  </div>

  <div class="warning"><strong class="warning">警告</strong>
   <p class="simpara">
    キャストのエイリアス <code class="literal">(real)</code> を使うことは、PHP 7.4.0 以降は推奨されなくなり、PHP 8.0.0 で削除されました。
   </p>
  </div>

  <div class="warning"><strong class="warning">警告</strong>
   <p class="simpara">
    <code class="literal">(unset)</code> によるキャストは、
    PHP 7.2.0 以降推奨されなくなりました。
    <code class="literal">(unset)</code> によるキャストは、
    値に <span class="type"><a href="language.types.null.php" class="type NULL">NULL</a></span> 値を代入することと同じです。
    <code class="literal">(unset)</code> によるキャストは、PHP 8.0.0 で削除されました。
   </p>
  </div>

  <div class="caution"><strong class="caution">警告</strong>
   <p class="simpara">
    将来サポートされることを見越して、<code class="literal">(binary)</code> によるキャストと <code class="literal">b</code> プレフィックスが存在しています。
    <code class="literal">(binary)</code> と <code class="literal">(string)</code> は現状は等価ですが、将来変更される可能性があります。そのため、現状等価であることに依存すべきではありません。
   </p>
  </div>

  <blockquote class="note"><p><strong class="note">注意</strong>: 
   <p class="para">
   キャストの括弧内のホワイトスペースは無視されます。
   よって、以下のふたつのキャストは等価です:
    <div class="informalexample">
     <div class="example-contents">
<div class="annotation-interactive phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$foo </span><span style="color: #007700">= (int) </span><span style="color: #0000BB">$bar</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$foo </span><span style="color: #007700">= ( int ) </span><span style="color: #0000BB">$bar</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

    </div>
   </p>
  </p></blockquote>

  <div class="informalexample">
   <p class="simpara">
    以下の例は、リテラル文字列や変数を、バイナリ文字列にキャストします:
   </p>

   <div class="example-contents">
<div class="annotation-interactive phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$binary </span><span style="color: #007700">= (binary) </span><span style="color: #0000BB">$string</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$binary </span><span style="color: #007700">= </span><span style="color: #DD0000">b"binary string"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

  </div>

  
  <p class="simpara">
   ある変数を文字列にキャストする代わりに、
   二重引用符で括ることもできます。
  </p>

  <div class="example" id="example-3">
   <p><strong>例3 異なるキャストの仕組み</strong></p>
   <div class="example-contents">
<div class="annotation-interactive phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$foo </span><span style="color: #007700">= </span><span style="color: #0000BB">10</span><span style="color: #007700">;            </span><span style="color: #FF8000">// $foo は整数です<br /></span><span style="color: #0000BB">$str </span><span style="color: #007700">= </span><span style="color: #DD0000">"</span><span style="color: #0000BB">$foo</span><span style="color: #DD0000">"</span><span style="color: #007700">;        </span><span style="color: #FF8000">// $str は文字列です<br /></span><span style="color: #0000BB">$fst </span><span style="color: #007700">= (string) </span><span style="color: #0000BB">$foo</span><span style="color: #007700">; </span><span style="color: #FF8000">// $fst も文字列です<br /><br />// これは、"they are the same"を出力します<br /></span><span style="color: #007700">if (</span><span style="color: #0000BB">$fst </span><span style="color: #007700">=== </span><span style="color: #0000BB">$str</span><span style="color: #007700">) {<br />    echo </span><span style="color: #DD0000">"they are the same"</span><span style="color: #007700">, </span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

  </div>
   
  <p class="para">
   型の間でキャストを行う際の動作は、必ずしも明確ではありません。
   詳細については、以下の節を参照ください:
   <ul class="simplelist">
    <li><a href="language.types.boolean.php#language.types.boolean.casting" class="link">論理値への変換</a></li>
    <li><a href="language.types.integer.php#language.types.integer.casting" class="link">整数への変換</a></li>
    <li><a href="language.types.float.php#language.types.float.casting" class="link">浮動小数点数への変換</a></li>
    <li><a href="language.types.string.php#language.types.string.casting" class="link">文字列への変換</a></li>
    <li><a href="language.types.array.php#language.types.array.casting" class="link">配列への変換</a></li>
    <li><a href="language.types.object.php#language.types.object.casting" class="link">オブジェクトへの変換</a></li>
    <li><a href="language.types.resource.php#language.types.resource.casting" class="link">リソース型への変換</a></li>
    <li><a href="language.types.null.php#language.types.null.casting" class="link">NULL への変換</a></li>
    <li><a href="types.comparisons.php" class="link">型の比較表</a></li>
   </ul>
  </p>

  <blockquote class="note"><p><strong class="note">注意</strong>: 
   <span class="simpara">
    PHP では配列の添字と同じ構文を使用した文字列へのアクセスをサポートしているので、次の例はあらゆるバージョンの PHP で成立します:
   </span>

   <div class="example" id="example-4">
    <p><strong>例4 文字列で配列の添字を使う</strong></p>
    <div class="example-contents">
<div class="annotation-interactive phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$a    </span><span style="color: #007700">= </span><span style="color: #DD0000">'car'</span><span style="color: #007700">; </span><span style="color: #FF8000">// $a は文字列です<br /></span><span style="color: #0000BB">$a</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">] = </span><span style="color: #DD0000">'b'</span><span style="color: #007700">;   </span><span style="color: #FF8000">// $a はここでも文字列です<br /></span><span style="color: #007700">echo </span><span style="color: #0000BB">$a</span><span style="color: #007700">;       </span><span style="color: #FF8000">// bar<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>

   <span class="simpara">
    詳細は、
    <a href="language.types.string.php#language.types.string.substr" class="link">文字列への文字単位のアクセス</a> を参照ください。
   </span>
  </p></blockquote>
 </div>

</div><?php manual_footer($setup); ?>