人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

[代理]すみません、丸投げ質問です。
TwitterのBOTに好感度機能がついているのですが、好感度は?と聞かれた時に数値ごとに分ける記述を教えて下さい。
たとえば、0?20だったらそれほど仲良くない、21?40だったらまあまあ仲良し 等と返信したいのですが。
現在の設定は以下の通りです。

//----------------------------------------------------//
//現在の好感度情報を表示 //
//--------------------------------------------------//
function showUserLoveValue($BrowseUsersLoveValue)
{

if( $BrowseUsersLoveValue >= 0 )
{
$ResultsMessage = "それほど仲よくない(好感度値:".$BrowseUsersLoveValue.")";
}

return $ResultsMessage;
}


これだと全ての数値で それほど仲良くない と返されてしまうので…。
どなたか記述をお願い致します。

●質問者:
●カテゴリ:コンピュータ ウェブ制作
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● ぽけっとしすてむ
●100ポイント

//http://q.hatena.ne.jp/
//URLはダミーです。消去できます。
//使用言語が不明なので、泥臭い処理で。
//----------------------------------------------------//
// 現在の好感度情報を表示 //
//--------------------------------------------------//
function showUserLoveValue($BrowseUsersLoveValue)
{
$ResultsMessage = "それほど仲よくない(好感度値:".$BrowseUsersLoveValue.")";

if( $BrowseUsersLoveValue > 20 )
{
$ResultsMessage = "まあまあ仲良し(好感度値:".$BrowseUsersLoveValue.")";
}

if( $BrowseUsersLoveValue > 40 )
{
$ResultsMessage = "ほどほど仲良し(好感度値:".$BrowseUsersLoveValue.")";
}

if( $BrowseUsersLoveValue > 60 )
{
$ResultsMessage = "仲良し(好感度値:".$BrowseUsersLoveValue.")";
}

if( $BrowseUsersLoveValue > 80 )
{
$ResultsMessage = "すごく仲良し(好感度値:".$BrowseUsersLoveValue.")";
}

return $ResultsMessage;
}


//////////
以下、PHPということで、追記です
//----------------------------------------------------//
// 現在の好感度情報を表示 //
//--------------------------------------------------//
function showUserLoveValue($BrowseUsersLoveValue)
{
switch (true) {
case ($BrowseUsersLoveValue > 20):
$ResultsMessage = "まあまあ仲良し(好感度値:".$BrowseUsersLoveValue.")";
break;
case ($BrowseUsersLoveValue > 40):
$ResultsMessage = "ほどほど仲良し(好感度値:".$BrowseUsersLoveValue.")";
break;
case ($BrowseUsersLoveValue > 60):
$ResultsMessage = "仲良し(好感度値:".$BrowseUsersLoveValue.")";
break;
case ($BrowseUsersLoveValue > 80):
$ResultsMessage = "すごく仲良し(好感度値:".$BrowseUsersLoveValue.")";
break;
default:
// ※これは、その他の数値・または20以下の場合
$ResultsMessage = "それほど仲よくない(好感度値:".$BrowseUsersLoveValue.")";
break;
}
return $ResultsMessage;
}


へさんのコメント
ありがとうございます!使用言語を記述するのを忘れておりました…申し訳ありません。 PHPです…凡ミス恥ずかしいです///

ぽけっとしすてむさんのコメント
追記部分は未確認です:)

へさんのコメント
ありがとうございました!

2 ● 蝸牛角上争何事
●100ポイント
<?php
//----------------------------------------------------//
// 現在の好感度情報を表示 //
//--------------------------------------------------//
function showUserLoveValue($BrowseUsersLoveValue)
{
 $ResultsMessage = "このメッセージになることはあり得ない(好感度値:".$BrowseUsersLoveValue.")";
 if( 0 <= $BrowseUsersLoveValue && $BrowseUsersLoveValue <= 20 )
 {
 $ResultsMessage = "それほど仲よくない(好感度値:".$BrowseUsersLoveValue.")";
 }
 elseif( 21 <= $BrowseUsersLoveValue && $BrowseUsersLoveValue <= 40 )
 {
 $ResultsMessage = "まあまあ仲良し(好感度値:".$BrowseUsersLoveValue.")";
 }
 elseif( 41 <= $BrowseUsersLoveValue && $BrowseUsersLoveValue <= 60 )
 {
 $ResultsMessage = "普通に仲良し(好感度値:".$BrowseUsersLoveValue.")";
 }
 ...

 return $ResultsMessage;
}
?>

冗長に見えますが値の範囲をきちんと書いておくとソースの可読性が上がります。
http://www.php.net/manual/ja/control-structures.if.php
http://www.php.net/manual/ja/control-structures.elseif.php


へさんのコメント
ありがとうございます! object(SimpleXMLElement)#11 (2) { ["error"]=> string(34) "Could not authenticate with OAuth." ["request"]=> string(22) "/1/statuses/update.xml" } というエラーが頻発するようなのですが、どこかに問題があるのでしょうか…。

へさんのコメント
私は全くの専門外なのでお手上げです><

へさんのコメント
マイナスの場合も同じ処理で良いのでしょうか…?

へさんのコメント
ありがとうございました!
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ