2016-10-27 4 views
-1

Kann die Zuordnung in die if-Query kombiniert werden und sollte das gemacht werden?Kombiniere if-query mit allocation

$textxPos = $xPos + $fieldData["coordinates"]["x"]/$divisor; 
if ($textxPos < 0) { 
    .. 
} 

wie so:

if ($link['value'] = trim($link['value'])) { 
    .. 
} 
+1

ist es möglich? Ja. sollte es getan werden? sehr subjektiv. In den meisten Fällen lautet die Antwort jedoch nein, weil der Code dadurch schwerer verständlich und weniger intuitiv ist. Es gibt einige Beispiele, wo es üblich ist ('while ($ row = fetch_something())'), aber meistens solltest du IMHO davon absehen. –

+1

"sollte das getan werden?" Nr. @FranzGleichmann Schönes Beispiel .. aber das ist in einer While-Schleife. Ich weiß nicht, ob es überhaupt möglich ist, sowas in einem if-Zustand zu tun ..? – Twinfriends

+1

@RamaLingam Für Sie gleich wie für WEBiuiu ... lesen Sie einfach seine Frage erneut. Deine Antwort hat ihm nicht geholfen, es ist absichtlich, dass es nur einen Gleichgestellten gibt. – Twinfriends

Antwort

-1

Try this:

if(($textxPos = $xPos + $fieldData["coordinates"]["x"]/$divisor) && $textxPos<0) 
{ 
    echo "true"; 
} 
else 
{ 
    echo "false"; 
} 

Beispiel:

<?php 
$var1 = "112"; 
$var2 = "112"; 
$divisor = "10"; 

if(($textxPos = $var1 + $var2/$divisor) && $textxPos<0) 
{ 
    echo "true"; 
} 
else 
{ 
    echo "false"; //$textxPos=123.2 
} 
?> 

Fi Ordnen Sie zuerst den Wert $textxPos zu, und überprüfen Sie dann die Bedingung mit dem Operator &&.

+0

Scheint so, als ob es funktioniert. Aber es sieht einfach falsch aus. –

+0

@Julli Schaf: Innerhalb 'if' Bedingung können wir jede Operation zuweisen oder ausführen. –