2011-12-09 5 views
0

私はこれらを持っているとしましょう。最高の番号を持つエコー文字列?

$z1 = substr_count_array($aldi1, "keyword"); 
$z2 = substr_count_array($aldi2, "keyword"); 
$z3 = substr_count_array($aldi3, "keyword"); 

substr_count_arrayは、キーワードがその文字列に含まれている回数をカウントします。 今、私は最高のカウント番号を持つ文字列をエコーし​​たいと思います。私は最高の番号を持つ文字列をエコーし​​たい。私はどうしたらいいですか?

+1

使用 '3つの変数のmax'と、出力 – ManseUK

+0

はあなたが何を意味しています関連する文字列を最高のカウント数で? – ajreal

+0

は常に関連する変数名ですか? '$ z#' - '$ aldi#'ここで#は同じ番号です – ManseUK

答えて

2

は、なぜあなたは、アレイ内のカウントから、結果を格納しないでください。あなたは、アレイ内の各「アルディ」を保存する場合は、この操作を行うことができます。

$longest = ""; 
$max = 0; 
foreach($aldi as $text) 
{ 
    $count = substr_count_array($text, "keyword"); 
    if($count > $max) 
    { 
     $longest = $text; 
     $max = $count; 
    } 
} 
echo $longest. " ". $max . " times"; 
+0

しかし、OPが望んでいるものは返されません。最高のカウントを持つ**文字列**ではなく、最高の**カウント**をエコーし​​ます。ちなみに、 '$ k'はどこから来たのですか?' $ z'ではありませんか? – codeling

+0

これは実際の文字列ではなく、カウントを返します。 – liquorvicar

+0

@nyarlathotepとliquorvicar ..あなたは正しいです。私は彼がカウントしたいと思った..私は私の答えを編集します.. – SERPRO

0

ManseUK、実際の回答に回答を投稿してみませんか?

とにかく、彼は正しいです:

echo max($z1, $z2, $z3);

+0

彼は最高の番号を持つ文字列を出力したい最も高い数字を出力したくありません。すなわち、最も高い数字が '$ z1'だった場合、文字列' $ aldi1' – ManseUK

+3

を出力しますが、OPが元々望んでいたものは出力しません。彼は**文字列**が最高の戻り値ではなくsubstr_count_arrayの最高値を返すようにしました。 – codeling

+0

最高の番号をエコーし​​たくない、最高の番号を持つ文字列をエコーし​​たい。 – user198989

0

使用PHP max機能:echo max($z1,$z2,$z3);

関連する問題