だから私はこのフォームを持っています。2つのフィールドがあります。 「Youtube」と「リンク」私はあなたがYouTubeに記入した場合にやりたいです、それはこれを行うべきです:
if(!empty($youtube)) {
if ($pos === false) {
echo "Du skal indtaste youtube et URL, som starter med 'http://www.youtube.com/watch?..<br>";
echo "<br> Har du ikke din video på YouTube, skal du ikke udfylde feltet, men kun 'Link' feltet.<br><br>";
echo "<a href='javascript:history.back();'>Gå tilbage</a>";
}
}
これは機能しますが、リンクに何もない場合は、同じif()もチェックしたいと思います。だから私はこれをしました:
if(!empty($youtube) && empty($link)) {
if ($pos === false) {
echo "Du skal indtaste youtube et URL, som starter med 'http://www.youtube.com/watch?..<br>";
echo "<br> Har du ikke din video på YouTube, skal du ikke udfylde feltet, men kun 'Link' feltet.<br><br>";
echo "<a href='javascript:history.back();'>Gå tilbage</a>";
}
}
しかし、逆にチェックしたい場合、リンクに何かがあり、YouTubeに何もない場合はどうなりますか?そして、これら2つに何もないかどうかを確認したい場合は?
if(!empty($youtube) && empty($link)) {
}
else if(empty($youtube) && !empty($link)) {
}
else if(empty($youtube) && empty($link)) {
}
4つのケースすべてで異なることを行うコンパクトな方法を次に示します。
if(empty($youtube)) {
if(empty($link)) {
# both empty
} else {
# only $youtube not empty
}
} else {
if(empty($link)) {
# only $link empty
} else {
# both not empty
}
}
代わりに式を使用したい場合は、代わりに?:
を使用できます。
echo empty($youtube) ? ( empty($link) ? 'both empty' : 'only $youtube not empty' )
: ( empty($link) ? 'only $link empty' : 'both not empty' );
いくつかのケース、または多くの基準を含むほんの少数のケースについては、スイッチの使用を検討してください。
switch( true ){
case ( !empty($youtube) && !empty($link) ):{
// Nothing is empty...
break;
}
case ( !empty($youtube) && empty($link) ):{
// One is empty...
break;
}
case ( empty($youtube) && !empty($link) ):{
// The other is empty...
break;
}
case ( empty($youtube) && empty($link) ):{
// Everything is empty
break;
}
default:{
// Even if you don't expect ever to use it, it's a good idea to ALWAYS have a default.
// That way if you change it, or miss a case, you have some default handler.
break;
}
}
同じアクションが必要なケースが複数ある場合は、それらをスタックして、ブレークを省略できます。フロースルーする。たぶん/ * Flowing through * /のようなコメントを入れて、わざとそれを行うことを明確にします。
ケースの周りの{}は必須ではありませんが、読みやすさとコードの折りたたみ性の点で便利です。
スイッチの詳細: http://php.net/manual/en/control-structures.switch.php