
phpを使い始めて間もないのですがファイルの最終更新日付を表示させたいと思い、やっているのですが、 syntax error, unexpected 'echo' (T_ECHO) in C:\Users\admin\Desktop\web\test\new_design\index4.php on line 19
とでて、どうにもできない状態です。
19行目周辺をどう直したらいいのでしょうか?
一応ソースですが、
<html>
<meta http-equiv="Content-Type" content="text/html;charset=Shift_JIS"/>
<head>
<title>Tokei with Photo。</title>
このページは自宅サーバーを利用しています。</br>
<?php
//ファイル
$top_url = "index.htm";
//更新時刻をUNIXタイムスタンプ値で取得
$get_unix = filemtime($top_url);
//UNIXタイムスタンプ値を変換
$get_date = date("Y/m/d",$get_unix);
date_default_timezone_set(Asia/Tokyo) //表示
echo "Last Update ";
echo $get_date;
?>
</head>
</html>
18行目のタイムゾーン指定は
無いと、表示は一応成功するのですが
日付表示の上に、date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in C:\Users\admin\Desktop\web\test\new_design\index4.php on line 17
と、エラーが出てしまうので、対処として指定しています。(php.iniで指定はしているのですが)
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
エラーメッセージの意味、理解していますか?
syntax error,
文法のエラー
unexpected 'echo' (T_ECHO)
期待されない「echo」
ということで、 『本来 echo と書けない箇所(echoが期待されない箇所)に echo がある、という文法上の間違い」ということです。
この「unexpected 〜」のエラーが出るときにチェックするべき点は次の3つです。
(1) 単純に、書き間違いをしていないか?
(2) 使い方を勘違いしていないか?
例えば、echo は関数ではないので、式の途中に書いたりはできません
(3) 括弧、引用符、 セミコロン等の忘れ/余分はないか?
(1)に近いですが。
括弧等を間違えると、期待とは違う文法解釈されて、「正しい」箇所が「間違い」と判定されることがあります。
この場合、エラーメッセージにある行番号や「期待されないXX(= XX がいらない)」と、真因が違うことがよくあります。
そのため、メッセージから真因を考える必要があります。
例) unexpected '}' だったら、次の2つが考えられます
・ } が多い(単純な書き間違い)
・ 上の方で { が抜けているために、ここで「 } が多い」と判定されてしまった(真因はメッセージとは別)
さて。
echo が多い、というエラーですが、 18行目に echo はありません。
次の行の echo がありますが、 これは「正しい」ものです( 少なくとも、あなたはそう思っているはずです)
ということは、 「echo が余分」なのではなく、「なにかが足りなくて、『echoが余分』と解釈されてしまっている」と考えられます。
そういう視点で
date_default_timezone_set(Asia/Tokyo) //表示
を見ると、確かに足りないものがあります。
また、これを解決しても、間違いがあります。
・マニュアルをよく読みましょう.
http://php.net/manual/ja/function.date-default-t …
・(Asia/Tokyo) とは、どういう意味になるかわかりますか?
・何の目的で date_default_timezone_set を使っているのか、考えましょう。
プログラムは、実行した順序で内容が変わります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
shシェルスクリプト 空白行の...
-
Dosブロンプトでtabを出力したい
-
findstrのerrorlevel
-
XMLのタグの有無をPHPで判定し...
-
特別な四捨五入の計算方法について
-
小数点以下0の非表示
-
「取得先」という表現について
-
Excel VBA:特定の文字列以降(...
-
ps3で久しぶりにCDの音楽情報取...
-
開始と終了を指定して、その間...
-
【C#】DataGridViewの最大列数...
-
wordの差し込み印刷で文字...
-
VB.NETでボリュームを取得・設...
-
INIファイル
-
VBA内でのGetPixelを使用した時...
-
Google scholarがひらけなくな...
-
完全なセッション破棄をしたい
-
ExcelVBAで、FileSystemObject...
-
WordでExcelデータを差込...
-
VB.NETからVBAマクロ(引数)を呼...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
shシェルスクリプト 空白行の...
-
バッチファイルで、全てのウィ...
-
findstrのerrorlevel
-
バッチファイルでpingの結果を...
-
switch()文で値の大小比較
-
syntax error, unexpected 'ech...
-
phpでcookieがうまく保存されない
-
小数点以下0の非表示
-
pdftkを使った処理をバッチファ...
-
Windowsのsetコマンドでの小数...
-
ifの条件(不等号)を動的に埋...
-
ゼロとNULLを区別して number_f...
-
PHPで訪問回数を表示するカウン...
-
bashの関数の引数にスペースが...
-
DBのハッシュ化したパスワード...
-
PHPで$_GET[’m’]の意味が分か...
-
WindowsのイベントログをExcel...
-
コマンドプロンプト フォルダ内...
-
php mysql SELECT文でテーブル...
おすすめ情報