php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 17-09-2006, 14:31
Melchor
 Junior Member
Links : Onlinestatus : Melchor ist offline
Registriert seit: Feb 2005
Beiträge: 61
Melchor ist zur Zeit noch ein unbeschriebenes Blatt
Standard ( @ ) Wofür steht dieses Zeichen?

hallo zusammen,

ich bin gerade dabei eine Server-Abfrage zu erstellen. Da ich das jetzt zum ersten mal mache, habe ich mir eine Vorlage aus dem I-Net gezogen, woran ich mich ein wenig orientieren wollte. Dabei bin ich auf einen Befehl gestoßen, bei dem ich nicht weiß was er bedeutet.

@fsockopen

Mir geht es jetzt nicht um fsockopen, sondern um das @ davor. Kann mir bitte mal wer sagen wofür dieses Zeichen steht?

Bei Google habe ich schon danach gesucht, aber nicht wirklich was gefunden.
Mit Zitat antworten
  #2 (permalink)  
Alt 17-09-2006, 14:37
_DD_
 Newbie
Links : Onlinestatus : _DD_ ist offline
Registriert seit: Sep 2006
Beiträge: 22
_DD_ ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Bin zwar wirklich ein PHP Amateur allerdings ist das doch meines Wissens dafür da, Fehlermeldungen diesbzgl. zu unterdrücken!

Gruß DD
Mit Zitat antworten
  #3 (permalink)  
Alt 17-09-2006, 14:45
Melchor
 Junior Member
Links : Onlinestatus : Melchor ist offline
Registriert seit: Feb 2005
Beiträge: 61
Melchor ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hmm versteh zwar nicht warum man sowas macht, aber da werd ich wohl nochmal ein wenig lesen müssen.

Danke für die schnelle Hilfe _DD_
bye
Mit Zitat antworten
  #4 (permalink)  
Alt 17-09-2006, 14:59
Hopka
 PHP Expert
Links : Onlinestatus : Hopka ist offline
Registriert seit: May 2003
Ort: Köln
Beiträge: 2.172
Hopka ist zur Zeit noch ein unbeschriebenes Blatt
Hopka eine Nachricht über ICQ schicken
Standard

Hier findest du mehr dazu:

http://php.net/language.operators.errorcontrol
__________________
hopka.net!
Mit Zitat antworten
  #5 (permalink)  
Alt 17-09-2006, 15:23
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Zitat:
Original geschrieben von Melchor
hmm versteh zwar nicht warum man sowas macht, aber da werd ich wohl nochmal ein wenig lesen müssen.
Es gibt eigentlich nur einen Grund, das zu machen: Man möchte ventuell auftretende Fehler nicht abfangen und ordentlich behandeln. Das ist in jedem Fall eine ganz lausige Art zu programmieren!

Wenn also in PHP-Code irgendwo @ vorkommt und nicht Teil einer Emailadresse ist, dann ist es schlechter Code. Ohne wenn und aber.
Mit Zitat antworten
  #6 (permalink)  
Alt 17-09-2006, 16:10
ArSeN
 Registrierter Benutzer
Links : Onlinestatus : ArSeN ist offline
Registriert seit: Feb 2006
Ort: Berlin
Beiträge: 1.052
ArSeN ist zur Zeit noch ein unbeschriebenes Blatt
ArSeN eine Nachricht über ICQ schicken ArSeN eine Nachricht über AIM schicken ArSeN eine Nachricht über Yahoo! schicken
Standard

Zitat:
Original geschrieben von onemorenerd
Ohne wenn und aber.
Naja, außer wenn es ein Zusammengesetzter Link für nen FTP-Login ist (ftp://user:password@server:port/) - da gibts auch 'n @ :p
__________________
Nur wenige wissen, wieviel man wissen muss, um zu wissen, wie wenig man weiß.
Mit Zitat antworten
  #7 (permalink)  
Alt 17-09-2006, 16:19
Shurakai
 Master
Links : Onlinestatus : Shurakai ist offline
Registriert seit: May 2004
Ort: Bergisch Gladbach
Beiträge: 3.084
Shurakai ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von onemorenerd
Wenn also in PHP-Code irgendwo @ vorkommt und nicht Teil einer Emailadresse ist, dann ist es schlechter Code. Ohne wenn und aber.
Da halte ich dagegen.

Gegenbeispiel: Du möchtest eine E-Mail versenden per mail()-Funktion, hast also einen Aufruf von mail() in deinem Code. mail gibt einen boolschen Wert zurück, ob die Mail für den Versand akzeptiert wurde oder nicht. Es ist also sehr gut vorstellbar, einen solchen Code zu implementieren:

PHP-Code:
if (mail(blablabala)) echo 'alles klar';
else echo 
'mailversand nicht erfolgreich'
Aber was machst du, wenn mail() überhaupt nicht den Mailserver erreicht, der die Mail verschicken soll? z.B. wenn der Mailserver überhaupt nicht läuft? Dann kriegst du oben ne dicke, fette, hässliche Warning-Zeile von PHP ausgegeben. Aber hat das den Benutzer zu interessieren? Nein, denn der kriegt ja schon von deinem Script die Nachricht, dass der Mailversand schiefgegangen ist. Und genau hier benutzt du einfach ein @, um die Warning-Zeile oben zu unterdrücken - und das hat für mich nichts mit schlechtem Code zu tun.


Schlechter Code ist, wenn man bewusst weiß, dass Fehler auftreten könnten (z.B. wenn ne DB-Query schiefgegangen ist) und dann z.B. vor mysql_fetch_assoc oder so ein @ setzt. Das ist IMHO schlechter Code.
Mit Zitat antworten
  #8 (permalink)  
Alt 17-09-2006, 16:51
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Zitat:
Original geschrieben von Shurakai
Aber was machst du, wenn mail() überhaupt nicht den Mailserver erreicht, der die Mail verschicken soll? z.B. wenn der Mailserver überhaupt nicht läuft? Dann kriegst du oben ne dicke, fette, hässliche Warning-Zeile von PHP ausgegeben. Aber hat das den Benutzer zu interessieren? Nein, denn der kriegt ja schon von deinem Script die Nachricht, dass der Mailversand schiefgegangen ist. Und genau hier benutzt du einfach ein @, um die Warning-Zeile oben zu unterdrücken - und das hat für mich nichts mit schlechtem Code zu tun.
Auf Live-Systemen, also solchen mit echten Usern, setze ich display_errors = off.
Mit Zitat antworten
  #9 (permalink)  
Alt 17-09-2006, 16:52
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

Wenn man auf dem Produktivsystem keine Warnings sehen will, dann schaltet man sie entweder in der php.ini oder mit error_reporting ab!!

@ <<-- die Klammeraffen haben im Code NICHTS zu suchen!!
(Meine Meinug)
Mit Zitat antworten
  #10 (permalink)  
Alt 17-09-2006, 19:22
Benny-one
 Master
Links : Onlinestatus : Benny-one ist offline
Registriert seit: Jan 2002
Ort: Fulda
Beiträge: 5.700
Benny-one ist zur Zeit noch ein unbeschriebenes Blatt
Benny-one eine Nachricht über ICQ schicken
Standard

Zitat:
Original geschrieben von onemorenerd
Es gibt eigentlich nur einen Grund, das zu machen: Man möchte ventuell auftretende Fehler nicht abfangen und ordentlich behandeln. Das ist in jedem Fall eine ganz lausige Art zu programmieren!

Wenn also in PHP-Code irgendwo @ vorkommt und nicht Teil einer Emailadresse ist, dann ist es schlechter Code. Ohne wenn und aber.
aha, und wenn du durch ein Verzeichnis browst und mittels getimagesize die Höhe und Breite einer Grafik ermitteln willst, dann musst du zwangsweiße ein @ benutzen, weil eine .txt einen Fehler (ist ja auch logisch) erzeugt.

Oder hättest du dafür ne Idee (mime_content_type ausgeschlossen)?
Mit Zitat antworten
  #11 (permalink)  
Alt 17-09-2006, 19:44
Shurakai
 Master
Links : Onlinestatus : Shurakai ist offline
Registriert seit: May 2004
Ort: Bergisch Gladbach
Beiträge: 3.084
Shurakai ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Wenn man auf dem Produktivsystem keine Warnings sehen will, dann schaltet man sie entweder in der php.ini oder mit error_reporting ab!!
Du kannst nicht voraussetzen dass jeder Zugriff auf die php.ini hat und error_reporting ist dann eine globale Einstellung und nicht nur für eine einzige Sache. Es kommt - IMHO - ganz auf den Standpunkt bzw. den Code drauf an, ob und wie du den Klammeraffen benutzt.
Mit Zitat antworten
  #12 (permalink)  
Alt 17-09-2006, 21:25
Hopka
 PHP Expert
Links : Onlinestatus : Hopka ist offline
Registriert seit: May 2003
Ort: Köln
Beiträge: 2.172
Hopka ist zur Zeit noch ein unbeschriebenes Blatt
Hopka eine Nachricht über ICQ schicken
Standard

Also wenn man Fehler abfangen will, dann fängt man am besten alle ab und guckt dann was man mit den einzelnen Meldungen so macht. set_error_handler ist hier sehr hilfreich.

Allerdings gibt es auch Situationen in denen man einfach ein @ benutzt. Allerdings sind das eher Ausnahmen.
__________________
hopka.net!
Mit Zitat antworten
  #13 (permalink)  
Alt 17-09-2006, 21:41
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

man überlege sich, ob es dieses konstrukt in anderen (besseren/richtigen) sprachen gibt und wenn nein -- warum.
Mit Zitat antworten
  #14 (permalink)  
Alt 17-09-2006, 21:47
combie
 PHP Expert
Links : Onlinestatus : combie ist offline
Registriert seit: May 2006
Beiträge: 3.296
combie wird schon bald berühmt werden
Standard

@Benny-one
Ganz schlechtes Beispiel
PHP-Code:
<?php
error_reporting
(E_ALL);
ini_set('display_errors'TRUE); 

$test getimagesize(__FILE__) ;

var_dump($test);
?>
PHP4 & PHP5 Stumm wie ein Fisch...
----------------------------
Zitat:
Du kannst nicht voraussetzen dass jeder Zugriff
Nein?
Nagut.. Wenn du deine Seite bei einem absoluten
Billigheimer hostest, dann evtl..
Ist mir aber noch nicht über den Weg gelaufen...
Selbst bei str*to und 1+1 ....
----------

Um mal ein wenig Frieden zu sähen:
@ ist ein PHP-Sprachmittel. PUNKT!
Wer als Programmierer nicht ALLE verfügbaren Mittel
einsetzt ist blöd.

Und jetzt zur Sinn Frage..
1. In Lehrbücher, Foren und Tutorials, ist ein
Sprachmittel, welches den Programmieranfänger
vor wichtigen Debug Hinweisen schützt, fehl am
Platze.. Erklären JA! Empfehlen NEIN!

2. Produktiv Umgebung
Abschalten, was das Zeug hält.
Fehlermeldungen per Email zum Webmaster, nagut,
damit er mich benachrichtigen kann (oder sofort zu mir).
Der Besucher bekommt eine saubere "Dieser Service
steht leider zur Zeit nicht zur Verfügung" (oder so
ähnlich) Meldung.

3. Wenn mir jemand sagt, "Wärend der Endwicklung
setze ich es manchmal ein." dann kann ich das
verstehen. Und manchmal, aber wirklich nur manchmal
setze ich es dann auch ein.

Geändert von combie (18-09-2006 um 01:05 Uhr)
Mit Zitat antworten
  #15 (permalink)  
Alt 18-09-2006, 00:39
ArSeN
 Registrierter Benutzer
Links : Onlinestatus : ArSeN ist offline
Registriert seit: Feb 2006
Ort: Berlin
Beiträge: 1.052
ArSeN ist zur Zeit noch ein unbeschriebenes Blatt
ArSeN eine Nachricht über ICQ schicken ArSeN eine Nachricht über AIM schicken ArSeN eine Nachricht über Yahoo! schicken
Standard

Zitat:
Original geschrieben von combie
.... 1. In Leerbücher ....
Ich bezweifle, dass ich Leerbüchern irgendwas erklärt wird, geschweige denn, dass da was steht.
__________________
Nur wenige wissen, wieviel man wissen muss, um zu wissen, wie wenig man weiß.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:29 Uhr.