Parse error: syntax error, unexpected T_INCLUDE, expecting T_FUNCTION

エラーメッセージParse error

 状態:-  閲覧数:4,671  投稿日:2013-02-10  更新日:2013-03-05  
エラーメッセージ
Parse error: syntax error, unexpected T_INCLUDE, expecting T_FUNCTION

エラー原因
・構文エラー
・関数を書くべき箇所に、予期しないincludeがある

エラー対策
・正しい構文へ直す

エラーと対策 … 例1

 閲覧数:661 投稿日:2013-02-11 更新日:2013-03-19 
エラー例1
・include出来ない場所に、include文を記述している
class A {// クラス定義
include('config.php');
}
$a = new A();// クラスからインスタンス(オブジェクト)を生成



エラー例1の原因
・includeを書く場所が正しくない
・クラス内で、includeを記述できる箇所は、「コンストラクタ内」「メソッド内」だけ


エラー対策例1-A
・コンストラクタ内にinclude文を記述するよう変更
class A {// クラス定義
 public function __construct() { // コンストラクタ
include('config.php');
 }
}
$a = new A();// クラスからインスタンス(オブジェクト)を生成

エラー対策例1-B
・メソッド内にinclude文を記述するよう変更
class A {// クラス定義
 public function b() {
include('config.php');
 }
}
$a = new A();// クラスからインスタンス(オブジェクト)を生成

エラー対策例1-C
・クラス外にinclude文を記述するよう変更
include('config.php');
class A {// クラス定義
}
$a = new A();// クラスからインスタンス(オブジェクト)を生成



その他
・一般的には、汎用性を考慮して、クラス外でincludeすることの方が多い
▼config.php
$country=japan;

▼index.php
include('config.php');

class A {// クラス定義

 private $var; // このクラス専用プロパティ

 public function __construct($var) { // コンストラクタ
     $this->var = $var; // オブジェクトのプロパティをセット
 }
 
 public function getVar() { //メソッド
     return $this->var; //ゲッター
 }

}      

$a = new A($country);// クラスからインスタンス(オブジェクト)を生成

echo $a->getVar(); // クラスプロパティを取得して出力。'japan’

・「define定数読込」だともっと楽(グローバル変数なので)
▼config.php
define('ADMINIP', '123.45.67.890');//サイト管理者のIP

▼index.php
include('config.php');
class A {// クラス定義

 private $var; // このクラス専用プロパティ

 public function __construct() { // コンストラクタ
     $this->var = ADMINIP; // オブジェクトのプロパティをセット
 }
 
 public function getVar() { //メソッド
     return $this->var; // ゲッター
 }

}      

$a = new A();// クラスからインスタンス(オブジェクト)を生成

echo $a->getVar(); // クラスプロパティを取得して出力。'123.45.67.890’



Parse error: syntax error, unexpected T_UNSET in ファイル名 on line 行番号

Parse error: syntax error, unexpected T_INCLUDE_ONCE, expecting T_FUNCTION

コメント投稿(ログインが必要)



類似度ページランキング
順位 ページタイトル抜粋
1 Parse error: syntax error, unexpected T_INCLUDE_ONCE, expecting T_FUNCTION 42
2 Parse error: syntax error, unexpected T_REQUIRE, expecting T_FUNCTION 41
3 Parse error: syntax error, unexpected T_REQUIRE_ONCE, expecting T_FUNCTION 39
4 Parse error: syntax error, unexpected 'public' (T_PUBLIC) 38
5 Parse error: syntax error, unexpected T_DECLARE, expecting T_STRING in ○○ on lin 36
6 Parse error: syntax error, unexpected T_DOUBLE_ARROW in △△ on line □□ 36
7 Warning: PDO::query(): LOAD DATA LOCAL INFILE forbidden 35
8 Parse error: syntax error, unexpected 'new' (T_NEW) 35
9 Fatal error: Uncaught PDOException: SQLSTATE[HY000] [2002] Connection refused 34
10 Parse error: syntax error, unexpected T_UNSET in ファイル名 on line 行番号 34
11 unexpected T_VARIABLE 31
12 Parse error: syntax error, unexpected end of file 30
13 Sorry, that page does not exist. 30
14 unexpected T_STRING 29
15 Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[23000]: Integrity constraint violation 28
16 Fatal error: Uncaught Error: Class 'Mecab_Tagger' not found in /var/www/ 28
17 ( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined 28
18 ( ! ) Fatal error: Uncaught Abraham\TwitterOAuth\TwitterOAuthException 27
19 Fatal error: Uncaught Error: Class 'Stripe\Checkout\Session' not found 27
20 Fatal error: Uncaught Error: Call to undefined function bcsub() 27
2023/6/04 20:58 更新
週間人気ページランキング / 5-28 → 6-3
順位 ページタイトル抜粋 アクセス数
1 ブラウザを閉じたらセッションデータはどうなるの? | セッション 34
2 Parse error: syntax error, unexpected 'public' (T_PUBLIC) | Parse error(エラーメッセージ) 14
3 スコープ | 変数 13
4 ブラウザを閉じたらセッションデータはどうなるの? | セッション 12
5 PHP用語 11
6 Fatal error: Access level to ▲::$△ must be protected (as in class ●) or weaker | Fatal error(エラーメッセージ) 9
7 セッションID | セッション 6
7 Fatal error: require_once(): Failed opening required 'PEAR.php' | Fatal error(エラーメッセージ) 6
7 コード例 … 「例外処理」はネストすることができる 6
7 Warning: include() [function.include]: Failed opening '**.php' for inclusion (in | Warning(エラーメッセージ) 6
7 セッション管理が必要な理由は、HTTPプロトコルには状態を保持する機能がないため | セッション 6
7 PHPで定数を定義する方法は2種類ある / 配列定数の定義 6
7 Fatal error: Call to undefined method MDB2_Error::execute() in ○○ on line △△ | Fatal error(エラーメッセージ) 6
8 型の種類 | 型 5
8 Fatal error: Uncaught RuntimeException: SplFileObject::__construct(): failed to open stream: Permission denied in | Fatal error(エラーメッセージ) 5
8 ガベージコレクション | 機能 5
9 curl で Cookie を使用する 4
9 @ | 演算子 4
9 ( ! ) Fatal error: Uncaught PDOException: SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column | Fatal error(エラーメッセージ) 4
9 Warning: PDO::query(): LOAD DATA LOCAL INFILE forbidden | Warning(エラーメッセージ) 4
2023/6/4 1:01 更新