0

私はうまく機能するいくつかのスクリプトを作成しましたが、まったく何もしないように見えるelseifステートメントを追加しようとしましたが、どこが間違っているのかわかりません。(はい、私は PHP の初心者ですが、試しています! :)

$i = 0;
foreach($arrJobs as $job)
{
    echo "<div class=\"job-ind\">\n";
    echo '<p><a href="' . $job->url . '">' . $job->title . ', ' . $job->location . "</a></p>\n";
    echo '<p class="smaller">Reference: ' . $job->reference . "</p>\n";
    echo '<p><strong>' . $job->salary . "</strong></p>\n";
    echo "</div>\n";

    if (++$i == 5) break;

    elseif ($i == 0) {
        echo '<img src="img/no-vac.png"/>';
    }
}

elseif ステートメントまでのすべてが完全に機能します。私が行方不明または誤解している単純なものでなければなりません!

4

4 に答える 4

4

$i0この場所にいることはありません。
テストの前に if ステートメントで値を増やします ( ++$i)。

于 2013-07-03T08:54:23.930 に答える
2

中括弧を使用する場合、elseif と else if はまったく同じと見なされることに注意してください。

if (++$i == 5) break;

elseif ($i == 0) {
    echo '<img src="img/no-vac.png"/>';
}

動作しません。次のように変更します。

if ($i == 0) { 
    echo '<img src="img/no-vac.png"/>'; 
}
elseif (++$i == 5) {
   break;
}

elseif対。else if

スレッドでこれについて議論している人をたくさん見かけます。これらはどちらも正しく、両方とも機能します。

違いは次のとおりです。

else if() {
}

翻訳先:

else {
    if(){
    }
}

また、次のようにコロンを使用するコード ブロックでは使用できません。

 if:
   stuff
 else if()://won't work
   //stuff
 endif;
于 2013-07-03T08:54:27.163 に答える
1

基本的な構文エラー? else if を実行するときは、ブレースなしの短い if を使用できません

 if (++$i == 5)  {
   break;
 } else if ($i == 0) {
   echo '<img src="img/no-vac.png"/>';
 }

あなたのものと比較して、このブロックの色の強調表示に注意してください

于 2013-07-03T08:54:11.027 に答える
0

これが作業結果です。ご協力いただきありがとうございます。

$i = 0;
foreach($arrJobs as $job)
{
    echo "<div class=\"job-ind\">\n";
    echo '<p><a href="' . $job->url . '">' . $job->title . ', ' . $job->location . "</a></p>\n";
    echo '<p class="smaller">Reference: ' . $job->reference . "</p>\n";
    echo '<p><strong>' . $job->salary . "</strong></p>\n";
    echo "</div>\n";
    }

    if ($i = 0) {
        echo "<div class=\"job-ind\">\n";
        echo '<img src="img/no-vac.png"/>';
        echo "</div>\n";
    }

    else if (++$i == 5) {
        break;   
    }
于 2013-07-03T09:04:58.580 に答える