@ en & voor functies

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Tim

Tim

03/09/2008 17:43:00
Quote Anchor link
Beste,


Al enkele malen ben ik functies tegengekomen waarvoor een @ of een & staat. Dit zijn functies als:

@move_uploaded_file()
@imagepng()
&$this->test()
etc...

Heeft dit nog een speciale functionaliteit of iets dergelijks? Zo ja, waarbij zou dit dan gebruikt moeten worden?


Bij voorbaat dank
 
PHP hulp

PHP hulp

26/12/2024 12:03:13
 

03/09/2008 17:49:00
Quote Anchor link
@ -> foutonderdrukking -> language.operators.errorcontrol
& -> by reference -> language.references.pass.
 
Leroy Boerefijn

Leroy Boerefijn

03/09/2008 18:01:00
Quote Anchor link
ik (en volgensmij de meeste mensen hier) raad het je niet aan om @ te gebruiken, als je correct script heb je het ook helemaal niet nodig ;)
 
GaMer B

GaMer B

03/09/2008 18:08:00
Quote Anchor link
In het uiterste kun je @ gebruiken als je een eigen complete error-handler hebt, maar zelfs DAN kan ik het je inderdaad niet aanraden, omdat het debuggen van je PHP applicatie dan een hels karwij is kan worden.
 
- -

- -

03/09/2008 18:17:00
Quote Anchor link
Leroy schreef op 03.09.2008 18:01:
ik (en volgensmij de meeste mensen hier) raad het je niet aan om @ te gebruiken, als je correct script heb je het ook helemaal niet nodig ;)


Ik gebruik wel degelijk @ voor mijn querys, omdat ik een eigen error afhandeling heb. Ik wil mijn foutmeldingen netjes laten zien, en prompt voor de bezoeker laten zien! ;)
 
GaMer B

GaMer B

03/09/2008 18:19:00
Quote Anchor link
@iChris, denk dat je dan beter een eigen class kunt gaan maken voor je database activiteiten. Dan kun je je eigen error handler inbouwen en heb je die 'vieze' @'s niet nodig :)
 
Robert Deiman

Robert Deiman

03/09/2008 22:27:00
Quote Anchor link
Als je het goed/ handig doet met een eigen error handler heb je inderdaad geen @ nodig. Je kan zelfs trigger_error(); gebruiken, als je nog niet oop en met try/ catch script, met je eigen error handler, die je instelt als default error_handler.

@Zou je eigenlijk niet moeten gebruiken, maar in sommige uiterste gevallen, kan het prima werken. Toch is het niet aan te raden.
 
- -

- -

03/09/2008 22:32:00
Quote Anchor link
Stel je hebt de volgende query:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$query
= mysql_query("SELECT * FROM blaat");
if(!$query)
{

     echo 'foutje!'.mysql_error();
}

?>


Blaat bestaat niet, dan krijg je eerst de foutmelding van mysql, vervolgens foutje! met daarin nog een keer de mysql_error... Lijkt mij onnodig? Daarom zet ik er een @ voor :)
 
Jan Koehoorn

Jan Koehoorn

03/09/2008 22:39:00
Quote Anchor link
De nette manier is om als je nog in de dev fase bent de foutjes naar het scherm te sturen en in de productiefase naar een logtabel in je DB. Gewoon een kwestie van wat vars zetten:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
    $dev
= true;
    
    if ($dev) {
           ini_set ('display_errors', 1);
    error_reporting (E_ALL | E_STRICT);
    }

?>

En bij het uitvoeren van je query's:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    $sql
= "
        blablabla
        "
;
    if (!$res = mysql_query ($sql)) {
        if ($dev) {
            // echo query en errors naar het scherm
        }
        else {
            // errors loggen naar db
        }
    }

?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.