質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

teratail

teratail(テラテイル)は、プログラミングに特化した日本語Q&Aサイトです。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

3回答

4270閲覧

winscpのphp.exeはどうやって確認すれば良いでしょうか。

b1ackc0ffee

総合スコア267

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

teratail

teratail(テラテイル)は、プログラミングに特化した日本語Q&Aサイトです。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2015/06/30 07:49

編集2015/06/30 08:28

ローカルでは確認できたのに、サーバーに上げると、

Parse error: parse error, unexpected T_STRING in /home/sample/htdocs/asada/php10/lesson27/filelist.php on line 16

というエラーが出てしまいます。
原因は、
多分ローカルのPHPが新しいからエラーが出ないけど、サーバのPHPが古いからではないかと思っています。
winscpのphp.exeのバージョンはどうやって確認すれば良いでしょうか。

それとも、他の何かが原因なのでしょうか。

バージョンが違うのが原因だったとして、
何をどうすれば、正常に表示されますでしょうか。

宜しくお願い致します。

lang

1<?php require_once '../Encode.php'; ?> 2<!DOCTYPE html> 3<html> 4<head> 5<meta charset="UTF-8" /> 6<title>PHP入門教室</title> 7</head> 8<body> 9<h3>ファイルリスト</h3> 10<table border="1"> 11<tr> 12 <th>ファイル</th><th>サイズ</th> 13 <th>最終アクセス日</th><th>最終更新日</th> 14</tr> 15<?php 16const DOC_ROOT ='../doc/'; 17clearstatcache(); 18// ↑キャッシュのクリア 19$o_dir = @opendir(DOC_ROOT) or die(' フォルダが開けませんでした。'); 20/* ここから--docフォルダ配下のファイルを出力-- */ 21while ($file = readdir($o_dir)) { 22 if (is_file(DOC_ROOT.$file)) { 23 $path = DOC_ROOT.$file; 24 $file = mb_convert_encoding($file, 'UTF-8', 'SJIS-WIN'); 25 # ↑SJISからUTF8へ変換 26?> 27 <tr> 28 <td><?php print(e($file)); ?></td> 29 <td><?php print(round(filesize($path) / 1024)); ?>KB</td> 30 <td><?php print(date('Y/m/d H:i:s', fileatime($path))); ?></td> 31 <td><?php print(date('Y/m/d H:i:s', fileatime($path))); ?></td> 32 </tr> 33<?php 34 } 35} 36closedir($o_dir); 37?> 38 <!-- * ここまで--docフォルダ配下のファイルを出力-- */ --> 39</table> 40</body> 41</html>

![イメージ説明]WIDTH:600

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

localでは動作するけど、本番?では動作しない。とのことですね。
確かにPHPのバージョンが違う可能性はあります。

確認するには、takayukiinaba さんのとおり phpinfo関数を呼び出す1行だけのPHPスクリプトを作成し、それぞれの環境で実行してみればわかると思います。

なお、、

winscpのphp.exeのバージョンはどうやって確認すれば良いでしょうか。

の問いの意味がよく分かりませんでした。

winscpが動作しているので local は Windows ですよね。
サーバ?(本番)はパス名を見る限りLinux/Unix系に見えます。

もし、Apache+PHPの構成であれば、php.exeはあまり関係なく、
Apache/module配下に、Windowsなら libphp.dll とか Linux系なら libphp.so などが
存在しているものが実際に動作する PHP だったりします。
※ 「あまり関係ない」と言ったのは、PHP.exe と libphp.dll は、PHP のインストールで
同時に導入されるので、同一バージョンになるケースが多いから。という意味からです。
PHP を個別にインストールすると 勿論バージョンが変わる可能性があります

12022の質問にもありましたが、
PHPエラーの場所が違うメッセージで現れる事は無いと思います。(私は経験ありません)

エラーの起因としては、それ以前の行が原因だった。とかはありますが
必ずメッセージで表示された行でエラーは発生していたりします。

がんばってください。

投稿2015/06/30 12:25

kurosawa

総合スコア780

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

b1ackc0ffee

2015/07/01 03:13

丁寧な説明有難うございます★ <pre> winscpのphp.exeのバージョンはどうやって確認すれば良いでしょうか。 の問いの意味がよく分かりませんでした。 </pre> 質問する以前に私の認識が間違っているかもしれません。 <pre> サーバ?(本番)はパス名を見る限りLinux/Unix系に見えます。 </pre> この部分の理解がまだできていないのです。 Linux/Unixを調べてもよくわかりませんでした。 ちなみに、 サーバーのバージョンは、 4.3.9 ローカルのバージョンは、5.6.8.0 constはPHP5.3で導入されたもので、それ以前のバージョンでは利用できなかったです。 回答いただいたものを理解していけるように頑張ります!!
guest

0

ベストアンサー

例えば新規でtest.phpというファイルを作成し、

test.php の中身

<?php phpinfo(); ?>

を記述してサーバにアップしてみて下さい。
後は、http://~~~~~~/test.php

とURLを入力すれば、

http://d.hatena.ne.jp/ozuma/20140825/1408970741

こんな感じの画面が表示されますよ。

投稿2015/06/30 08:39

takayukiinaba

総合スコア1158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

b1ackc0ffee

2015/07/01 03:13

いけました! 有難うございました★
guest

0

<?php phpinfo(); ?>

で確認できますよ。

Parse error: parse error, unexpected T_STRING in /home/sample/htdocs/asada/php10/lesson27/fil> elist.php on line 16

ですが、filelist.php の16行目付近に警告が出ていますよ~。

投稿2015/06/30 08:00

編集2015/06/30 08:05
takayukiinaba

総合スコア1158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

b1ackc0ffee

2015/06/30 08:34

回答ありがとうございます! であれば、エラーメッセージが合っているとは限らなんですねぇ。。 質問内容と、winscpのツールバーの画像を追加しました。 教えていただいたコードは、どこで実行すれば宜しいのでしょうか。 素人の質問で大変恐縮です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問