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

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

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

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

Q&A

3回答

2019閲覧

PHPの書き方について!!

NIA

総合スコア181

PHP

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

0グッド

1クリップ

投稿2015/04/08 09:44

編集2015/04/08 09:54

友人とPHPのコードの書き方についてどっちが見やすく綺麗か話し合ってます。
まあ、簡単に言うとただのリファクタリングですね!

lang

1// pattern - 1 2class FB 3{ 4 function __construct() 5 {} 6 function fizzBuzz() 7 { 8 $fizz = 3; 9 $buzz = 5; 10 if( (0 < $fizz && $fizz < 100) && (0 < $buzz && $buzz < 100) ) 11 { 12 for( $i = 1 ; $i <= 100 ; $i++ ) 13 { 14 $f = $i % $fizz; 15 $b = $i % $buzz; 16 if( $f === 0 && $b === 0 ) 17 { 18 echo "FIZZ BUZZ({$i})<br />"; 19 } 20 elseif( $f === 0 ) 21 { 22 echo "FIZZ({$i})<br />"; 23 } 24 elseif( $b === 0 ) 25 { 26 echo "BUZZ({$i})<br />"; 27 } 28 else 29 { 30 echo "{$i}<br />"; 31 } 32 } 33 } 34 else 35 { 36 echo '入力は 1 以上 100 未満'; 37 } 38 return 0; 39 } 40}

lang

1// pattern - 2 2class FB { 3 function __construct() {} 4 function fizzBuzz() { 5 $fizz = 3; 6 $buzz = 5; 7 if ((0 < $fizz && $fizz < 100) && (0 < $buzz && $buzz < 100)) { 8 for ($i = 1 ; $i <= 100 ; $i++) { 9 $f = $i % $fizz; 10 $b = $i % $buzz; 11 if($f === 0 && $b === 0) { 12 echo "FIZZ BUZZ({$i})<br />"; 13 } elseif($f === 0) { 14 echo "FIZZ({$i})<br />"; 15 } elseif($b === 0) { 16 echo "BUZZ({$i})<br />"; 17 } else { 18 echo "{$i}<br />"; 19 } 20 } 21 } else { 22 echo '入力は 1 以上 100 未満'; 23 } 24 return 0; 25 } 26}

もっと綺麗で見やすい書き方等あればアドバイス下さい!

※例としてのコードなのでFizzBuzz問題のシンプル化を突っ込まれても困るのでご了承下さいWW

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

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

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

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

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

guest

回答3

0

リファクタリングというよりコーディング規約の問題ではないでしょうか?

特別な理由がない限り(フレームワーク独自のルールがある等)、
PHPのコーディング規約はPSRに従えばいいと思います。
PSR

PHP界隈のお偉いさん?があつまって決めたルールで日本語の翻訳してくれている人もいます。
(ぐぐれば出てくると思います。)

掲題のコードでいう制御構造のブロック開始位置はPSR-2に記載があります。

投稿2015/04/08 10:02

PruneMazui

総合スコア227

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

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

0

おそらくあなたの言っている
「FizzBuzz問題のシンプル化」を(含めてコードを整理したり)することが
「リファクタリング」です。

さて、{}の位置ですが、
複数人での開発:規約に従う。
一人で組むけど誰かが見るかもしれない:言語で一般的な方に合わせる。
誰も見ない:自分の好み。
でいいんじゃないでしょうか。

投稿2015/04/08 10:30

ozwk

総合スコア13521

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

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

0

IDE を使っている人ならツールの自動整形を使うんじゃないでしょうか。
これは綺麗で見やすいというだけでなく、表記揺れが少なくなるので統一性の問題も解決してくれます(ツールがバラけた場合はまた別の問題が発生する気もするけど…)。
ちなみに Eclipse(Pleiades の PHP 版インストール直後)で整形した結果はほぼ2番目のようです。
事例だと半角スペースをつかっているように見えるけど Eclipse だとタブが使われるようです。
後はだいたい一緒っぽい。

投稿2015/04/08 09:59

toydev

総合スコア297

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問