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

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

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

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHP

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

Q&A

解決済

2回答

793閲覧

PHPのスクリプトに「->」を記載するとそこから先の処理がPHPではなく普通のテキストとして扱われるようになります。

sem2012sp_a

総合スコア49

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHP

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

0グッド

0クリップ

投稿2017/01/05 19:55

PHPのスクリプトに「->」を記載するとそこから先の処理がPHPではなく普通のテキストとして扱われるようになります。

PHP

1/* 2$TestData->aaaa 3*/

こんな感じでコメントとして記載しても「->」以降の「aaaa」はコメントとして扱われずにブラウザに表示されます。

<環境>
Apache2.4
php-5.6

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

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

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

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

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

guest

回答2

0

Apache に PHP の設定がされていないか、
ファイルの拡張子が、.php になっていない
または、<?php が書かれていない状況のように見受けられます。

以下のようにだけ記述した、test.php を作成して、実行して見てください。
正しく設定されていれば、PHPに関する設定情報が表示されます。

php

1<?php 2phpinfo(); 3?>

投稿2017/01/05 20:14

編集2017/01/05 20:20
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

sem2012sp_a

2017/01/05 20:59

「->」以前の処理は正しく実行されます。 当然「phpinfo();」も動作します。
退会済みユーザー

退会済みユーザー

2017/01/05 21:02 編集

あとは、情報が少なすぎて何ともいえませんね。 $TestData->aaaa セミコロンがないのが、省略しているのか、書き忘れているのかも判断できませんし。
sem2012sp_a

2017/01/05 21:08

失礼しました。 説明が足りなかったですね。 $TestData->aaaaに特に意味はありません。(「->」←これを記載するとそこから先の処理がPHPとして扱われなくなります。) <?php -> phpinfo(); ?> こうするとphpinfoは動作しなくなり、ブラウザの画面にphpinfo();と出力されます。
退会済みユーザー

退会済みユーザー

2017/01/05 21:09

-> これって、演算子だという知識は持っています?
sem2012sp_a

2017/01/05 21:09

スクリプトの記載ミスと受け取られそうなので書き直します。 <?php //-> phpinfo(); ?>
退会済みユーザー

退会済みユーザー

2017/01/05 21:18 編集

それはただの文法エラー <?php // 以下の二行を <?php の次の行に書いて実行してください。エラーが表示されます。 ini_set('display_errors', 1); error_reporting(E_ALL);
sem2012sp_a

2017/01/05 21:56

回答ありがとうございました!
guest

0

自己解決

単純に「<?php」を「<?」と省略して書いていた事が原因でした。
short_open_tagを有効にすると使えるみたいで、今まで使っていたサーバーではerrorが出なかったので気が付きませんでした。

投稿2017/01/05 21:55

sem2012sp_a

総合スコア49

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

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

退会済みユーザー

退会済みユーザー

2017/01/05 22:04 編集

そこが原因だったのであれば、「『->』以前の処理は正しく実行されます。」というあなたの提示した情報は間違っていたということですね。 「推測」を「事実」と捉えられるような記述は避けましょう。
退会済みユーザー

退会済みユーザー

2017/01/05 22:43

スクリプト内の表現でサーバサイドでスクリプトとして扱ったり、テキストとして扱ったりするという内容の質問だったので、非常に興味を持ってみていたのですが。。。提示条件に間違いがあるなんてがっかりです。
zico_teratail

2017/01/06 00:05

2017/01/06 06:08のコメントで >こうするとphpinfoは動作しなくなり と書いてますが、それはウソだったってことですね。 実際には動作テストをやってなかった、と。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問