SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 20.06.2012, 00:01:50
Sepp Baum Sepp Baum ist offline
Anfänger
 
Registriert seit: Jun 2012
Ort: Schönau am Königssee
Alter: 71
Beiträge: 1
Unterschied zwischen echo und print

Im Praxisbuch steht dass die folgende Code nicht funktioniert:

Code:
<?php
$wert == 0 ? echo "wert ist 0" : echo "wert ist nicht 0";
?>
Dass stimmt.

Was aber wohl funktioniert, ist folgende Code:

Code:
<?php
echo $wert == 0 ? "wert ist 0" : "wert ist nicht 0";
?>
Mit Zitat antworten
  #2  
Alt 20.06.2012, 20:38:21
Benutzerbild von urvater
urvater urvater ist offline
Senior Member
 
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 55
Beiträge: 1.044
AW: Unterschied zwischen echo und print

Ja das ist richtig. Ich vermute einmal, dass du dich fragst wieso das 2. Beispiel so funktioniert.

Wichtig ist dieser Teil im genannten Beispiel:
Zitat:
...die Konstruktion erwartet aber Rückgabewerte...
Dein Echo am Anfang gibt somit den Rückgabewert in der Konstruktion aus.
Mit Zitat antworten
  #3  
Alt 18.07.2012, 14:03:58
misterunknown misterunknown ist offline
Anfänger
 
Registriert seit: Mar 2010
Alter: 33
Beiträge: 21
AW: Unterschied zwischen echo und print

Zitat:
Zitat von Sepp Baum Beitrag anzeigen
Code:
<?php
$wert == 0 ? echo "wert ist 0" : echo "wert ist nicht 0";
?>
Was aber wohl funktioniert, ist folgende Code:
Code:
<?php
echo $wert == 0 ? "wert ist 0" : "wert ist nicht 0";
?>
Da du als Überschrift "Unterschied zwischen echo und print" genannt hast, will ich mal darauf eingehen.
Der "?:"-Operator oder auch Trinitätsoperator genannt gehört zwar zu den Vergleichsoperatoren, der Ausdruck hat aber den Anspruch etwas zurückzugeben.
Dein erstes Beispiel fungiert also wie ein einfacher Funktionsaufruf, dessen Rückgabewert man beispielsweise einer Variablen zusweisen kann. Da echo() keine Funktion ist, sondern ein Sprachkonstrukt, was keinen Rückgabewert hat (void), funktioniert das erste Beispiel nicht.
Das zweite Beispiel funktioniert deshalb, weil der Trinitätsoperator einen Wert zurückgeben kann, und zwar an das Konstrukt "echo".

Nehmen wir einmal "print". Print ist auch ein Sprachkonstrukt, hat aber einen Rückgabewert (int). Dieser ist immer 1. Deshalb würde das erste Beispiel mit "print" auch funktionieren:
Code:
<?php
$wert == 0 ? print "wert ist 0" : print "wert ist nicht 0";
?>
Der gesamte Ausdruck hätte dann in jedem Fall den Wert 1. Diesen Wert könnte man auch einer Variablen zuweisen:
Code:
<?php
$foo = ($wert == 0 ? print "wert ist 0" : print "wert ist nicht 0");
?>
$foo hätte in jedem Fall den Wert (int)1.

Wenn man eigene Funktionen definiert, dann ist es egal, ob sie explizit per return einen Wert zurückgeben oder nicht. Sollte das nicht der Fall sein, wird NULL zurückgegeben. Das ist ein Unterschied zwischen Funktionen und Sprachkonstrukten: Mit Trinitätsoperatoren können nur Sprachkonstrukte verwendet werden, die einen Rückgabewert haben.
Mit Zitat antworten
Antwort

Stichworte
echo, print


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
UPDATE funktioniert iwie nicht Wuschelchen PHP Grundlagen 7 07.05.2010 19:42:19
4 Tabellen vergleichen und sortieren incombatbazz PHP Grundlagen 6 23.05.2008 12:28:41
Wie kann ich ein Bild hochladen und gleichzeitig Beschreibungstext einlesen? UncleKracker PHP Grundlagen 20 11.10.2006 19:20:24
Verschiedene abfragen in einem html.doc ausgeben stoppel66 PHP Grundlagen 4 22.11.2005 15:02:26
wohin mit dem "move_uploaded_file" schnipsel sodiummd PHP Grundlagen 65 22.02.2005 13:13:09


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:36:49 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt