
プログラム初心者です。
includeやrequireなどの関数を使ってファイルを呼び込むために、下記のようなソースを作りましたが、Fatalエラーになってしまいます。どこがいけないのかご指摘をいただけないでしょうか?
ネットでこれらの関数の扱い方について検索しますと、PHPでは実行されたファイルのディレクトリがルートとして扱われるそうで、他のディレクトリを参照する時は、相対パスのみでは無理の様子でした。この場合、組込み定数となる__FILE__を使って絶対パスを導かなければいけないような記述がありました。これに習って書いてみたのですが、どうもうまくいきませんのでご指導をいただければと思います。
■以下、ツリー構造
root
|_con ←フォルダ階層
| |_nav.php ←ファイル階層
|_mod
| |_nav.csv
|_view
|_index.php
■以下、phpファイル群
/////// nav.php //////////
<?php
$Data=file (dirname(__FILE__)."/../mod/nav.csv");
for($i=0;$i<sizeof($Data);$i++){
$line=explode(",",$DataN[$i]);
?>
/////// index.php ////////
<?php
include once (dirname(__FILE__). "/../con/nav.php");
?>
No.1ベストアンサー
- 回答日時:
nav.php
まず、for文の閉じ}が無い事
絶対パスでも動くし、相対パスでも動きますよ
file文は関数なので、スペース開けないように(まぁ、あけても動くけど)
$Data=file("../mod/nav.csv");
for($i=0;$i<sizeof($Data);$i++){
$line=explode(",",$DataN[$i]);
}
index.php
パスの指定の仕方がおかしい。
include onceの文法がおかしい。include onceではなく include_once です。
同じく スペースあけないように
include_once("con/nav.php");
この回答への補足
今、相対パスで実行することができ、初歩的な間違いに気づくことができました。有難うございます。
もう少し理解を深めたいので、質問しても良いでしょうか?
1)相対パスに使う、ドットは、実態のツリー階層の数と合わせる必要がありますか?
2)includeは、多段構造となっても実現可能でしょうか?多段といいますのは、a.php ← b.php ← c.phpといった具合に取り込むことです。
もし、お分かりでしたら、教えてください。よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHP Linux から Windowsへの移行
-
SendMailがエラーを返さない
-
CSV出力にHTMLが入ってしまう
-
.phpファイルが、表示されない
-
PHPからメールを送る@さくらイ...
-
centos6のlogにscript not foun...
-
ob_end_clean と ob_clean の違...
-
php.ini を設定を変更すると再...
-
CFileDialogの最初のディレクト...
-
IIS+PHP スクリプトから仮想デ...
-
glide3x.dllがないと表示されま...
-
PHPのif文でその処理を途中で抜...
-
PHP PDOライブラリが読み込まれ...
-
include先でのinclude元の変数...
-
try~catch構文は、どういうメ...
-
FTPコマンドでディレクトリごと...
-
Notice: Undefined offset: 1を...
-
PHPでメールを受信するには?
-
テキストボックスにデータベー...
-
fopenでファイルが開かない場合...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
.htaccessファイルの修正がこれ...
-
自分で書いた.htaccess添削して...
-
デフォルトのURLを決めてリンク...
-
microSDの装着による連続待受時...
-
it.phpをインクルード
-
値の引継ぎについて
-
携帯からも編集できるwiki的な...
-
ファイルの遷移がうまく行われ...
-
CakePHPの表示エラーについて
-
下品な改竄イラストに悩んでい...
-
OKwebと教えてgooとは同じ?
-
Webアプリにおけるエントリポイ...
-
include時の頭の良いパス指定に...
-
パスの書き方。
-
phpMyAdminを同一のIISの別サイ...
-
cakePHP導入 XREA+について
-
Content-Disposition: inlineの...
-
php拡張子を無くす
-
他のフォルダにあるPHPをreq...
-
Zend Frameworkは商用サイトで...
おすすめ情報