2017-04-07 11 views
0

私はPHPに慣れていません。 謝罪は既に投稿されている場合。 私はすべてのページのタイトルを設定するために次のコードを使用しています。 のconfig.phpはしている - >すべてのページの異なるタイトルのPHPのbreak文

$pag = $_SERVER['PHP_SELF']; 
    switch ($pag){ 
    case '/artist.php': 
    $title= $db->query('select name from artist'); 
    $description = $db->query('select des from artist'); 
    break; 

    case '/album.php': 
    $title= $db-query('select name from album'); 
    $description = $db->query('select des from album'); 
    break; 
    } 

artist.phpは持っている - >

 print_r($title); 
    print_r($description); 

すべてが正常に動作しています。私が知りたいのは、誰かがartist.phpの4つのクエリが実行された場合、またはcase /artist.phpの2つのクエリだけが実行された場合です。

+0

なぜ4つのクエリーを実行する必要があると思いますか?あなたは自分で答えを知っていると思っていますが、PHPにはそれほど精通していないので、それほど確かではありません。しかし、それは難しいことではありません...あなたのコードを読んで、何が起こっているのか自分に尋ねてください。 – Twinfriends

+0

私は約15ページあり、すべてのページは2つまたは3つのクエリを持っています。すべてを実行すると、パフォーマンスが低下します。 – Pradeep

+0

スイッチケースでスキップしているため、コードは実行されません。 – Twinfriends

答えて

2

回答者Twinfriendsが正しいです。 breakのため、プログラムはswitchの1つのブランチを実行します。

自分で見つけることができます。 1つの方法は、ステップバイステップで行くことができるいくつかのデバッガです。もう1つの方法は、switchの各支店でのテスト印刷(echo()またはvar_dump())です。あなたは何が印刷されるのか、何が印刷されないのかを見るでしょう。

+0

ありがとうございます。 'artist'テーブルから名前を取得すると、最初のCaseの両方のクエリが実行され、' album'テーブルから名前が取得された場合は、両方のクエリが実行されたことを意味します。 – Pradeep

+1

@Pradeepはい、そうです。スイッチの詳細については、[PHPマニュアル](http://php.net/manual/en/control-structures.switch.php)を参照してください。 –

関連する問題