0

この場合、私は以下を使用します:

<?php 
include_once 'connect.php'; # connect with MySQL database
# some PHP code
?>

<!-- some HTML code -->

<?php 
# here PHP code wants to use MySQL connection opened before
?>

2番目のPHPタグにinclude_onceを含める必要がありますか?

4

3 に答える 3

2

include_onceステートメントは、スクリプトの実行中に指定されたファイルをインクルードして評価します。これはincludeステートメントと同様の動作ですが、唯一の違いは、ファイルのコードがすでにインクルードされている場合、再びインクルードされないことです。名前が示すように、それは一度だけ含まれます。

したがって、connect.phpが一度含まれると、再び含まれることはありません。

例えば

<?php 
     include(a.php)  //it will include a.php
     include(b.php)  //it will include b.php
     include(a.php)  //it will include a.php again
?>

<?php 
     include_once(a.php)  //it will include a.php
     include_once(b.php)  //it will include b.php
     include_once(a.php)  //does nothing
?>
于 2012-09-10T12:19:17.187 に答える
1

同じリクエスト/ページ内にある場合は、ファイルを再度含める必要はありません。

また、を使用include_onceすると、すでに含まれているファイルを含めることができなくなります。

以前に含まれていた変数と接続を自由に使用できますconnect.php

于 2012-09-10T12:19:02.263 に答える
0

PHPタグを閉じるとき、セッションを閉じないでください。含まれているコードは、開くか閉じるかを選択したすべてのphpタグで引き続き使用できます。

- index.php
  - includes once connect.php
  - includes once foo.php
  - includes bar.php

- foo.php
  - Contains scope from connect.php

- bar.php
  - Contains scope from connect.php
  - Contains scope from foo.php

includeとinclude_onceの唯一の違いは、同じファイルを複数回インクルードする場合でも、インクルードされるのは1回だけであるということです。

含める例

<?php
    include ( 'connect.php' ); // Includes an evaluates code.
    include ( 'connect.php' ); // Includes an evaluates code.
    include ( 'connect.php' ); // Includes an evaluates code.
?>

Include_onceの例

<?php
    include_once ( 'connect.php' ); // Includes an evaluates code.
    include_once ( 'connect.php' ); // Does nothing.
    include_once ( 'connect.php' ); // Does nothing.
?>

これは、アプリケーションがライブラリを含むモジュールを使用する場合に役立ちます。同じライブラリが何度も含まれないようにするには、必要なのが1回だけの場合は、include_onceを使用します。

于 2012-09-10T12:24:31.990 に答える