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

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

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

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

Q&A

解決済

1回答

917閲覧

php 関数でreturn値をbreakにしたい

holic

総合スコア134

PHP

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

0グッド

0クリップ

投稿2018/03/31 01:59

編集2018/03/31 02:03

前提・実現したいこと

以下にソースを記します。

解決したいことその①
具体的には関数upperChで
「breakしてループを抜け出す」「breakしないでwhileを続ける」の判断をさせたいです。
現状だと return値を"true/false"で取得して、後でtrue,falseをif文で判断しているために2度手間になっていて気がします、
もっとすっきり書けないものかと悩んでいます。

解決したいことその②
そもそもですが、
while ($count <= 1000000):
この記述を何とかしたいです。

「1000000」という数字にあまり意味はなくて、
プログラムの意図としては『breakするまで続ける、breakしなかった相手が【A】【B】どちらなのかが知りたい』という
ものです。ですので、whileにはこだわりません。

php

1<?php 2$price = 1; 3$aWallet = 1500; 4$bWallet = 2050; 5 6function upperCh($price,$llet){ 7 if($llet >= $price){ 8 return "true"; 9 }else{ 10 return "false"; 11 } 12} 13 14$count = 1; 15while ($count <= 1000000): 16 if(($count%2) === 1){ 17 $tradeCheck = upperCh($price,$aWallet); 18 if($tradeCheck !=="true"){ 19 break; 20 } 21 $turn = "A"; 22 $price +=10; 23 }else{ 24 $tradeCheck = upperCh($price,$bWallet); 25 if($tradeCheck !=="true"){ 26 break; 27 } 28 $turn = "B"; 29 $price +=1000; 30 } 31 32 $count++; 33endwhile; 34 35echo $turn; 36 37?>

該当のソースコード

ソースコード

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

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

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

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

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

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

guest

回答1

0

ベストアンサー

こういう感じでしょうか。

PHP

1function upperCh( $price, $llet ) { 2 return ( $llet >= $price ); 3}

PHP

1if ( upperCh( $price, $aWallet ) ) {}

投稿2018/03/31 02:05

kei344

総合スコア69398

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

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

holic

2018/03/31 02:17 編集

upperCh関数はかなりすっきりとありがとうございます。 判断式をreturnすることで”true/false”が判断できるのですね。 if文については、私のルール説明不足でした。 下記のルールがございます。 $countが奇数の時は$aWalletを使う。 $countが偶数の時は$bWalletを使う。 説明不足で申し訳ありません。
kei344

2018/03/31 02:21

「もっとすっきり書けないものかと悩んでいます。 」に対する回答なので、あとは応用してください。
holic

2018/03/31 02:24

kei344様 ここからは自力で頑張ってみます。ご意見ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問