php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 26.03.2005, 22:54  
Gast
 
Beiträge: n/a
Standard Trinärer Operator, $_GET und .cache?!

Hallo zusammen,

mein erster Post und gleich dumm gefragt.
Ich versuch gerade ein Galeriescript zu verstehen, dass unter http://www.flashdreams.de/tuts/php-t...humbnails.htmlerklärt wird.
Am Anfang wird zwar der "trinäre Operator" erklärt, also die verkürzte if-else-Verzweigung, aber jetzt bin ich an einer Stelle, bei der die Verzweigung so aussieht:
PHP-Code:
<?php
!isset ($aspectratio) || !ereg ('^[0|1]$'$aspectratio$regs)
? isset (
$x) && isset ($y)
aspectratio 1
$aspectratio 0
$aspectratio;
?>
Aufgeschlüsselt versteh ich das so:
PHP-Code:
<?php
if (!isset ($aspectratio) || !ereg ('^[0|1]$'$aspectratio$regs))
{
isset (
$x) && isset ($y);
}
?>
UND DANN? Da weiss ich nimmer weiter?

--------

Noch ne andere Frage:
der Ausdruck:
PHP-Code:
<?php
$cachedir 
substr($HTTP_GET_VARS['image'],0,strrpos($HTTP_GET_VARS['image'],'/') + 1).cache;
!
is_dir ($cachedir)
mkdir ($cachedir0777)
system ("chmod 0777 ".$cachedir);
?>
liefert doch so das gleiche Ergebnis:

PHP-Code:
<?php
$cachedir 
substr($_GET['image'],0,strrpos($_GET['image'],'/') + 1).cache;
if (!
is_dir ($cachedir))
{
mkdir ($cachedir0777);
}
else [ 
system ("chmod 0777 ".$cachedir);
}
?>
-------------
Und noch eine Frage zum zweitem Code-Schnipsel: Was bringt das ".cache" am Ende des $cachedir?!


Vielen Dank für Hilfe

Michi


edit by ben:
formatierungen hinzugefügt.
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.03.2005, 10:42  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard Re: Trinärer Operator, $_GET und .cache?!

Zitat:
Zitat von Outerlimits
jetzt bin ich an einer Stelle, bei der die Verzweigung so aussieht:
PHP-Code:
<?php
!isset ($aspectratio) || !ereg ('^[0|1]$'$aspectratio$regs)
? isset (
$x) && isset ($y)
aspectratio 1
$aspectratio 0
$aspectratio;
?>
So sieht sie ganz sicher nicht aus. Und wenn du, wie im Tutorial, die Teile entsprechend einrücken würdest, dann wäre es auch übersichtlicher. In verschachtelten Fällen besser auch noch Klammern verwenden.
PHP-Code:
<?php
!isset ($aspectratio) || !ereg ('^[0|1]$'$aspectratio$regs)
       ? (isset (
$x) && isset ($y)
          ? 
aspectratio 1
          
$aspectratio 0)
       : 
$aspectratio;
?>
Das hat dann die gleiche Bedeutung wie:
PHP-Code:
<?php
if(!isset ($aspectratio) || !ereg ('^[0|1]$'$aspectratio$regs)){
    if(isset (
$x) && isset ($y)){
        
$aspectratio 1;
    }
    else{
        
$aspectratio 0;
    }
}
else{
    
$aspectratio;
}
?>
Was die letzte Zeile bewirken soll, ist mir unklar, aber der Ausdruck ist nicht falsch. Und die Interpretation des zweiten Teils ist richtig. Aber
PHP-Code:
<?php
$cachedir 
substr($_GET['image'],0,strrpos($_GET['image'],'/') + 1).cache
?>
ist wahrscheinlich falsch, ausser du hättest eine Konstante mit dem Namen cache definiert. Diese würde dann mit dem Punkt-Operator an den andern String angehängt. Gemeint ist wahrscheinlich das:
PHP-Code:
<?php

$cachedir 
substr($_GET['image'],0,strrpos($_GET['image'],'/') + 1) .  'cache';
?>
und würde einfacher mit
PHP-Code:
<?php
$cachedir 
dirname($_GET['image']) . 'cache';
?>
geschrieben
__________________
Gruss
L
lazydog ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
trinär operator, trinäre operatoren, trinärer operator, php trinär operator, trinär operator php, php verzweigung mit operator, php trinär ausdruck, php verzweigung operatoren, trinäres zahlencode, php trinärer operator, php trinäre, php get operatoren, php .= operator, trinäre operator, php isset trinär, c# trinärer operator, trinären operatoren., trinäres system, trinäre operator php, dirname $_get

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:28 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.