PHPでParse errorについて

このQ&Aのポイント
  • PHP設置時に表示されるParse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /当HPのアドレス/VoteBorn/VoteController.php on line 9を解決する方法
  • PHPのParse errorに関して、9行目付近を見直しても間違いがわからない場合の解決方法を教えてください
  • PHPでParse errorが表示される問題について、VoteController.phpの9行目を確認しましたが間違いがわかりません。解決策を教えてください
回答を見る
  • ベストアンサー

PHPでParse errorについて

PHPでParse errorについて PHP設置した際に Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /当HPのアドレス/VoteBorn/VoteController.php on line 9 が表示されているのですが 9行目付近を見直しても間違えがわかりません。 <?php //VoteControllerから見たMatrixController.phpへの相対パス require_once "./MatrixController.php"; //Version 1.00 //Made by Nearliquid class VoteController extends MatrixController { private $col_list = array("id", "name", "Vote"); private $target_row = NULL;//ターゲットの行 private $target_vote = NULL;//ターゲットの投票数 private $now_row; public function makeFile($vote_file) { $this->makeMatrix($vote_file, $this->col_list); } //この関数を使わないと、これより下の関数は使用できない。 public function readFile($fp) { $this->readMatrix($fp); } public function checkNameCrash($name) { if($this->getTargetRow("name", $name) === FALSE) {//登録予定の名前は現在投票システム上には存在しない return(TRUE); } else {//二重登録 return(FALSE); } } 以下略・・・・ 申し訳ないのですが 是非ご教示の程よろしくお願いします

  • PHP
  • 回答数5
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
noname#244856
noname#244856
回答No.3

<?php echo PHP_VERSION; ?> これでPHPのバージョンが見れます。 もし古いものを使われている場合は、新しいバージョンに乗り換えてください。 最低: 5.3 推奨: 5.4 or 5.5 レンタルサーバーの場合は、別のサーバーを検討してください。

wahaha5959
質問者

お礼

ありがとうございました ver5.5でのレンタルサーバーに乗り換えました

その他の回答 (4)

  • iioi
  • ベストアンサー率26% (22/84)
回答No.5

>最低: 5.3 >推奨: 5.4 or 5.5 残念ながらPHP 5.3のサポートを終了しています。(2013/3末で5.3のサポート終了) 最低が5.4です。

  • bm_hiro
  • ベストアンサー率51% (200/388)
回答No.4

To_aru_Userさんが正解。 PHP 4.4で 現象の再現を確認しました。 ただの報告です。

noname#244856
noname#244856
回答No.2

privateが予約語に入ってないってことは・・・ まさかPHP4を使われているってことはありませんよね・・・???? (今時PHP4なんてあり得ない・・・)

  • notnot
  • ベストアンサー率47% (4835/10236)
回答No.1

そういうエラーは出ませんね。 貼り付けた物が間違っているのでは?

関連するQ&A

  • PHPのエラー教えて!parse error, unexpected T_STRING

    すみません PHPのエラー教えてください ------------------------------内容は↓ <?php // まずはクラス名を指定 class AboutMe { // 変数のタイプを指定します ●ここ●public $name = "デイビッド田中"; public $email = "david.tanaka@davidtanaka.localdomain"; public $phone = "011-81-333-333-3333"; } // クラスを呼び出します。 $About = new AboutMe(); // 情報を表示します print($About->name); ?> ---------------------------------ココまで ●ここ●は印のために入れたもの エラーは parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in ●ここ● エラー番号は●ここ●を指しています WindowXP、Apache、PHP5

    • ベストアンサー
    • PHP
  • PHPのエラーについて

    このファイルを実行した際に下記のようなエラーが出力されます。 Parse error: syntax error, unexpected '$yamada' (T_VARIABLE), expecting ',' or ';' in C:\xampp\htdocs\study.localhost\sample.php on line 30 何が原因でこのようなエラーが発生しているのでしょうか? 初心者で的外れな質問かもしれませんがよろしくお願います。 <?php class Employee { public $name; private $state = '働いている'; public function getState() { return $this->state; } public function setState($state) { $this->state = $state; } public function work() { echo '書類を整理しています'; } } ?> <?php $yamada = new Employee(); $yamada->job = 'プログラマ'; $yamada->name = '山田'; $yamada->setState('休憩している'); 30行目→echo $yamada->name,'さんは', $yamada->getState();

  • PHPでクラス内のpublicでエラーになる原因

    Apache/1.3.27を使っています。 下記コードをローカルで表示すると Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in c:\phpdev\www\ajax\sql.php on line 11 というエラーが出てしまいます。 なぜエラーになるのか原因が分かりません。 アドバイスを頂けないでしょうか。 <html> <head><title>PHP TEST</title></head> <body> <?php $tv = new Television(); $tv->$channelNo = 8; $tv->dispChannel(); class Television{ public $channelNo; function dispChannel(){ print('現在のチャンネルは'.$this->channelNo); } } ?> </body> </html>

    • ベストアンサー
    • PHP
  • Parse errorについて教えてください

    私は独習PHPという参考書でプログラムの勉強をしている初心者です。 先日、PHPの「オブジェクト指向構文」を勉強していたのですが、その中の「継承」という項目にあるサンプルプログラムを動かしてみたのですがParse errorと言うメッセージが出て動きません。構文に関するエラーという事はわかったのですが括弧や;をチェックしても参考書と変わらないのでタイプミスではないと思うのですが、どなたか解決法をご教授お願いします。以下はそのときのプログラムとエラーメッセージです。 ファイル名:subclass.php <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http//www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html> <head> <title>サブクラス</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF8" /> </head> <body> <?php class MyClass {  protected $data; public function __construct($data){ $this->data=$data; } public function showData(){ return '入力値は「'.$this->data.'」です。'; } } class MySubClass extends MyClass { public function showData(){ return '***入力値は「'.$this->data.'」です。***'; } } $obj=new MySubClass('PEAR'); print($obj->showData()); ?> </body> </html> エラーメッセージ: Parse error: syntax error, unexpected T_STRING, expecting T_FUNCTION in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\samples\chap2\subclass.php on line 12

    • ベストアンサー
    • PHP
  • PHP T_STRINGエラー?

    新しくPHPのサイトを作成しようとしたんですが、 syntax error, unexpected '{', expecting T_STRING in と表示されてどうにも使用がありません。 どこが原因でエラーが出てるのでしょうか? エラー行は7行と表示されていますが、いまいちわかりません スクリプトは以下の記述の通りです <?php require './Request.php'; require './Cookie.php'; final class SystemMain extends { private static $instance; private $modeName; public static function getInstance() { if (self::$instance === null) { self::$instance = new SytemMain(); } return self::$instance; } public function setMode() { if (file_exists('./maintenance')) { $this->modeName = 'Maintenance'; } else { $str = Request::both('mode'); if (!$str) { $this->modeName = 'Top'; } else if (file_exists('./script/mode/' . $str . '.php')) { $this->modeName = $str; } else { $this->modeName = 'NotFound'; } } require_once './script/mode/' . $this->modeName . '.php'; } public function getMode() { return $this->modeName; } } ?> Request.php <? class Request extends { public static function get($str) { return isset($_GET[$str]) ? $_GET[$str] : null; } public static function post($str) { return isset($_POST[$str]) ? $_POST[$str] : null; } public static function both($str) { $post = self::post($str); return $post ? $post : self::get($str); } } ?> Cookie.php <? class Cookie extends { public static function set($name, $value, $expire = 0) { return setcookie($name, $value, $expire); } public static function get($str) { return isset($_COOKIE[$str]) ? $_COOKIE[$str] : null; } public static function clear($str) { $_COOKIE[$str] = ""; return setcookie($str, ""); } } ?>

    • ベストアンサー
    • PHP
  • Parse errorについて質問です

    オーサカPHPさんのw3Analyzerと言うアクセス解析を使ってみようと思い 設置してログを見ようとすると、 Parse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING in /××××/w3a/w3a.php on line 82 と出るのですが、これはw3a.phpの82行目がおかしいとでているのでしょうか? w3a.phpは一切なにも変更はしていないのですが・・・ PHP4の環境向けに作られていると書いてあり、自分のサーバーのPHPのバージョンを見てみるとPHP 4.4.8と書いてありました。 これはPHP4と言うことでいいのでしょうか?

    • ベストアンサー
    • PHP
  • PHPでのエラー(unexpected T_STRING~)

    PHP5で、以下のクラスで構文エラーが出てしまいます。 //=================================================== <?php class fileUpload{ define (kakunou_PATH, "../cast_img/" .$_FILES["file_data1"]["name"]); var $error_message; function fileUpload($ftmp_name, $fsize;){ (省略) } } //=================================================== *****エラーメッセージ******************************** Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/sites/heteml/users61/v/e/n/venusline/web/config/fileUpload_class.php on line 5 ***************************************************** 5行目はdefine()の行です。 ちなみにここでパスを定義してますが、 define()を使うのでは無く var $path = 'パス名'; としても同じエラー。 また、$_FILESの記述を削っても同じエラーが出ます。 エラー文中のT_OLD_FUNCTION が気になったので、 一応コンストラクタを__constructにも変えてみたのですがやはりダメでした・・ どなたかエラーの原因が解る方、どうぞ宜しくお願いします。

    • ベストアンサー
    • PHP
  • PHPでエラーがでてしまって困っています。

    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /Applications/MAMP/htdocs/5-2-1.php on line 30 このエラーを解消できません。 下記は実践マスターPHP+MYSQLという書籍のなかのサンプルなんですが、どこが間違っているかどなたか教えていただけないでしょうか? エラーを検索するとダブルクォーテーションの使い方が原因と書いてあるんですが、最近PHPを勉強したばかりでどうやっても解決できません。 function check_3(&$str){ $str =str_replace($GLOBALS["from"],$GLOBALS["to"],$str);  ←この行でエラー global $msg; $msg = $GLOBALS["from"].'から'.$GLOBALS["to"].'へ置換しました!<br>'; return strlen($str); } 宜しくお願いします。

    • 締切済み
    • PHP
  • 連想配列、オブジェクト配列の使い分け

    お世話になります。 データベースで結果を取得する場合など、連想配列のままではなく何故、わざわざオブジェクトに格納する様な手法が使われるのでしょうか? 連想配列のままで処理するほうが早いと思いますし、それに付随するクラスファイルも多くなります。また、「結びつきを緩くして仕様変更に耐えうる様に」など聞きますが、余計複雑になってしまう様な気がしますので、メリットが今ひとつ分からず判断に迷ってしまいます。 どの様な使い分け、考え方をすれば良いかアドバイスいただけたら幸いです。 何卒、宜しくお願いします。 例) ※必要と思われる部分のみ記述しております。 ■連想配列 while($row=mysql_fetch_assoc($res)){ ~以下必要な処理} ■オブジェクト配列 while($row=mysql_fetch_assoc($res)){ $example = new Example(); $example->setName($row['name']); $example->setAddr($row['addr']); $array[] = $example } ~以下必要な処理 ○モデル class Example { private $_name = null; private $_addr = null; public function __construct() {} public function setName($name) { $this->_name = (string) $name; return $this; } public function getName() { return $this->_name; } public function setAddr($addr) { $this->_addr = (string) $addr; } ~以下省略 }

    • ベストアンサー
    • PHP
  • こんにちは、PHP初心者です。

    こんにちは、PHP初心者です。 Smartyを利用してWebサイトを構築中です。 Smarty.classの派生クラスを作成し、コンストラクタ内でDB接続オブジェクトをprivateプロパティ($_db)に設定しているのですが,query文のところでエラーSELECT * FROM books [nativecode=1046 ** No database selected]となります。ためしにコンストラクタ内でクエリを実行したところテーブルから値を取得できました。なぜコンストラクタ外に出るとエラーになるのかわかりません。どなたかご教示ください。どうぞよろしくお願いします。 下記ソースです。 =====派生クラス======================= <?php $user = "dbuser"; $pass = "dbpassword"; $name = "mobilephp"; $host = "localhost"; require_once("DB.php"); require_once("Smarty/libs/Smarty.class.php"); class MySmarty extends Smarty { private $_db; public function __construct() { $this->Smarty(); $this->template_dir="../templates"; $this->compile_dir="../templates_c"; $this->_db=DB::connect("mysql://$user:$pass@$host/$dbname"); } public function __destruct() { $this->_db->disconnect(); } public function get_db() {return $this->_db;} } ?> ======end===================================== ==========メインのPHP=================================== <?php require_once("../MySmarty.class.php"); $o_smarty=new MySmarty(); $db=$o_smarty->get_db(); $stt=$db->query("SELECT * FROM books");←ここでエラーになる $data=array(); while($row=$stt->fetchRow(DB_FETCHMODE_ASSOC)){ $data[]=array("isbn"=>$row['isbn'],"title"=>$row['title'], "publish"=>$row['publish'],"price"=>$row['price']); } $o_smarty->assign("data",$data); $o_smarty->display("structure.html"); ?>

    • ベストアンサー
    • PHP