2 if abfragen zusammenfassen/verkürzen?

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
krusan

2 if abfragen zusammenfassen/verkürzen?

Beitrag von krusan »

Hi,
ich habe 2 if abfragen die wie folgt aussehen:


Code: Alles auswählen

if ( $views_higher_than )
{
if ( $num_ary == 0 )
{
     $sql_where = '';
     $views_higher_than = "views < $views_higher_than";
}
else
{
     $sql_where = $cd;
     $views_higher_than = "AND views < $views_higher_than";
}
}
else if ( $num_ary == 0 && !$views_higher_than && !$views_lower_than )
{
$sql_where = '';
message_die(GENERAL_MESSAGE, 'fehler');
}
else
{
$sql_where = $cd;
}

if ( $views_lower_than )
{
if ( $views_higher_than )
{
     $views_lower_than = "AND views > $views_lower_than";
}
else if ( $views_lower_than && !$views_higher_than && $num_ary != 0)
{
     $views_lower_than = "AND views > $views_lower_than";
}
else if ( $views_lower_than && $num_ary == 0)
{
     $sql_where = '';
     $views_lower_than = "views > $views_lower_than";
}
}
Da das ziemlich viel Code ist würde mich mal interessieren ob man das ganze irgendwie zusammenfassen/verkürzen kann?

Grüße krusan
Dwing
Ehrenadmin
Beiträge: 1965
Registriert: 17.06.2001 02:00

Beitrag von Dwing »

Ich wüsste jetzt nicht wie
Ist IMHO schon recht kompakt. Du solltest aber immer auf die Tabs achten, da dann der Code um einiges übersichtlicher wird.

Code: Alles auswählen

if ( $views_higher_than ) 
{ 
	if ( $num_ary == 0 ) 
	{ 
     		$sql_where = ''; 
     		$views_higher_than = "views < $views_higher_than"; 
	} 
	else 
	{ 
     		$sql_where = $cd; 
     		$views_higher_than = "AND views < $views_higher_than"; 
	} 
} 
else if ( $num_ary == 0 && !$views_higher_than && !$views_lower_than ) 
{ 
	$sql_where = ''; 
	message_die(GENERAL_MESSAGE, 'fehler'); 
} 
else 
{ 
	$sql_where = $cd; 
} 

if ( $views_lower_than ) 
{ 
	if ( $views_higher_than ) 
	{ 
     		$views_lower_than = "AND views > $views_lower_than"; 
	} 
	else if ( $views_lower_than && !$views_higher_than && $num_ary != 0) 
	{ 
     		$views_lower_than = "AND views > $views_lower_than"; 
	} 
	else if ( $views_lower_than && $num_ary == 0) 
	{	 
     		$sql_where = ''; 
     		$views_lower_than = "views > $views_lower_than"; 
	} 
}
Antworten

Zurück zu „Coding & Technik“