![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.1ベストアンサー
- 回答日時:
1 が出る理由は include_once の結果が true (正常)だったことを表していると思います。
つまり include_once としての機能は正常に終了したということです。
999 にならないのは、include_once(1回しかインクルードしない)からです。
どういうことかというと1回しかインクルードしないから2回目の include_once 内のコードは実行されていない。
include_once としては2回目のインクルードだから実行せずに終わりました、でもそれは正常なことです、と返しているのではないでしょうか。
ただ include_once は関数の機能ではありません。
通常戻り値を返したいのであれば、function で関数を作成すべきです。
今回のようなプログラムは非常によろしくないプログラムで、単にバグを生むだけになると思いますよ。
この回答へのお礼
お礼日時:2006/01/23 14:22
ありがとうございます
require_onceは返り値がないが
include_onceは帰り値をつかえるとマニュアルに書いてあるのですが使ってはいけないのでしょうか?
1回目のinclude_onceを取り除けば999が返るということは使えると思ったのですが。。。
No.4
- 回答日時:
2回目以降のinclude_once は、読込をしないのだから、return ( ) による返値は無いが、読み込まれているということで 1 を返す
ということですね。
返値が必要ということであれば、
(1回目しか実行されないのだから)
一度目の返値を取っておいて、それが既に存在するかどうか調べるというようなことになるんじゃないかと思います。
No.3
- 回答日時:
再び#1です。
先ほどはマニュアルも見ずに回答してしまったので改めて見てみました。
最新のマニュアルによると include_once に関しては戻り値の説明はありません。
require_once には戻り値があります。
既に読み込まれているときは TRUE が返るとのことです。
include_once
http://www.php.net/manual/ja/function.include-on …
require_once
http://www.php.net/manual/ja/function.require-on …
試してみたところ include_once でも require_once でも結果は同じでした。
つまり「なぜ1が返るか」という答えは既に読み込まれているため TRUE が返った、ということになります。
ただ実際に return をして戻り値が返ってしまうので、悪プログラムを作成する前提で使うのでしたらそれで構わないと思います。
その場合は include_once ではなく、include を使えばいいでしょう(何度も呼び出すのであれば)。
No.2
- 回答日時:
> include_onceは帰り値をつかえるとマニュアルに書いてあるのですが使ってはいけないのでしょうか?
いけない、ということは無いと思います。
ですが、functionを使ったほうが安全では無いでしょうか?
勿論、include_onceで無ければいけない理由が有るのなら別ですが。
include_onceの機能・役割をもう一度見つめなおして、それでもこの方が良いと思うのであればどうぞお使いください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP ECCUBE4のページ管理でPHPを実行させたい 1 2023/04/06 11:42
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP ランキングを表示する際の画像の大きさを固定することは可能でしょうか? <?php if ( has_ 1 2022/07/21 14:55
- WordPress(ワードプレス) wordpressでphpを読み込みたい 1 2022/10/30 23:40
- PHP 共通の処理をまとめる方法がわからないのでアドバイスお願いします。 1 2022/12/19 20:20
- PHP PHP一覧表示した項目にリンクをはりたい 1 2023/07/12 17:08
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHP ページング データベース 1 2022/06/16 10:30
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
require_onceで読み込む場合、...
-
CFileDialogの最初のディレクト...
-
VB6にてメールを送信する方法
-
onedrive にexcelファイルをア...
-
phpのheader("Location:#pos")...
-
バイナリファイルをブラウザに...
-
OpenGLで描いて画像ファイル出力
-
フォントの色を変えるには?
-
VB.NET 最下位のディレクトリ名...
-
リンク先を隠す方法はないでし...
-
PHPのif文でその処理を途中で抜...
-
FORMタグを使わずに、POSTする...
-
youtubeに音声のみのmp4ファイ...
-
mysql複数レコードをまとめて削...
-
受け取ったパラメータを次のphp...
-
phpの階層が変わると上手く読み...
-
Subversionのリポジトリの削除
-
PHPMailerのコードエラーが解決...
-
CSV出力にHTMLが入ってしまう
-
PHP session_destroyとsession...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[PHP] 任意のDNSでIPアドレスを...
-
wordpressのルートのindex.php...
-
すべてのページのurlをindex.ph...
-
PHP/icludeを使った相対パスの...
-
require_onceで読み込む場合、...
-
.htaccessファイルの修正がこれ...
-
CakePHPの表示エラーについて
-
phpによる携帯振り分けとSEOの...
-
相対パスの挙動を理解できない
-
モバイルとPC にエージェン...
-
phpで24時間おきに任意のテキス...
-
ゼンド フレイムワークがどうや...
-
$_GET 取得できない
-
歴史上の人物や宗教
-
PHPでグローバルナビゲーション...
-
PEARを使ったメール送信でのinc...
-
特定のディレクトリだけ、phpを...
-
深い階層のフォルダの作成や削...
-
smartyで同じテンプレートを使...
-
ApacheのRewrite
おすすめ情報