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

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

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

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

Q&A

解決済

2回答

3079閲覧

PHPのアロー演算子について

enokiyo

総合スコア78

PHP

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

0グッド

0クリップ

投稿2016/08/30 17:41

PHPのアロー演算子 $post->ID みたいな書き方は現在非推奨なのでしょうか?
これに代わる書き方で推奨される書き方はどうなるのでしょうか?

詳しい方よろしくお願いいたします。

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

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

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

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

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

guest

回答2

0

ベストアンサー

非推奨になったという話は聞いたことがないですね。
納品先の話は、推測ですが古いPHPではfunctionの戻り値をそのままアロー演算子でつなぐとエラーが発生していたので、そういう使い方はやめてくれという話なのでは?

PHP

1echo Example::getInstance()->someMethod(); //PHP5.6だったかな?より前の環境ではエラーになる 2$example = Example::getInstance(); 3echo $example->someMethod(); //これなら動作する

投稿2016/08/31 01:40

編集2016/08/31 01:41
kunai

総合スコア5405

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

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

enokiyo

2016/08/31 01:49

ご回答ありがとうございます。 php5.6だと上記のような書き方ができるのですね。 ただ今回は逆で自分が昔の知識で書いたものでご指摘を受けたのであまり自信がなく・・・でした。 修正も先方でされたようでして、どこで不具合がでて、どこを直したのか聞いてもアロー演算子を使わないでほしいと言われるだけで・・・よくわかりませんでした。 非推奨になった事実はなく問題ないようでしたら気にしないで忘れます。 お騒がせしました!
kunai

2016/08/31 02:12

ベストアンサーに選んでいただいてアレですが、気にした方が良いかと思います。 私の回答はあくまで推測によるもので、どういう状況でどういう意図で発言されたものか把握していません。 足りない知識があるという事は仕方がないですが、相手の発言を理解しないまま(特にそれがマイナスのモノであれば特に)放置すると、経験上何もいいことがありません。。 今回は相手が納品先と言う事で直接聞きなおすのは難しいと思いますが、社内の上司の方や、その納品先の方と直接話をされた方に、今後どのようにコーディングすべきかを相談した方が良いかと思います。
enokiyo

2016/08/31 03:33

アドバイス、ありがとうございます。 気になったので先ほどクライアント先に聞いたのですが、どうもアロー演算子が原因のエラーではなかったようでした。PHPにあまり詳しない方がチェックしていた未定でした。 結局詳しいことがわからずでした、ありがとうございました。 お騒がせいたしました!
guest

0

文脈がわからないので、聞きたいことと違うのかもしれませんが。
こういうこと?

php

1<?php 2 3class Sample 4{ 5 6 public static $staticVar = ''; 7 public $var = ''; 8 9} 10 11$obj = new Sample(); 12 13// Static プロパティにはアクセスする 14 15// NG 16// Strict standards: Accessing static property Sample::$staticVar as non static ~ 17var_dump($obj->staticVar); 18 19// OK 20var_dump(Sample::$staticVar); 21 22// StaticプロパティでなければOK 23var_dump($obj->var);

投稿2016/08/30 17:59

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

enokiyo

2016/08/31 00:22

ご回答ありがとうございます。 あるプログラムを作成した時にアロー演算子を使いました。 その際にエラーが出たようで、納品先にアロー演算子は今後使ってはいけない・・・みたいなことを言われたのですが、調べてもどこにもそのような記述がなかったものでして・・・。 自分もPHPにかなりブランクがあったので、現在アロー演算子が非推奨になったのかがわからずでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問