phpbar.de logo

Mailinglisten-Archive

[php] Methode lieber statisch oder nicht

[php] Methode lieber statisch oder nicht

Steffen Kother steffen.kother at gmx.net
Don Sep 13 13:45:59 CEST 2007


Hallo Leute,

Habe gerade mal mit PHPEdit v2.12.2.5164 mein simples 5er Testskript
"enkäfert". Hier erstmal das Skript als solches:

<?php
require_once 'library/common.class.inc.php5';

$test =& single('common');
$test -> reqClasses('mysql');

$result = $test -> mysql -> fetchAll(mysql::query('SELECT * FROM
sap_data.kna1 ORDER BY KUNNR ASC'));

echo '<pre>';
print_r($test);
echo '</pre>';
?>

Funzt wie gewünscht. Error-Reporting steht auf E_ALL. Mich stört jetzt
nur noch die E_STRICT- Meldung "Non-static method mysql::query() should
not be called statically". Ohne "static"-Zusatz in der Definition der
Methode läuft das Skript relativ schnell durch. Schreibe ich aber
"static" mit rein, dann benötigt das Skript im Verhältnis dazu ewig.
Hier mal der unstatische Code der Methode:

    public function query ($query = NULL, $link = NULL) {
        if (empty($this)) {
            $mysql = new mysql();
            return $mysql -> query($query, $link);
        }

        if (NULL === $query) {
            return false;
        }

        $link = $this -> checkResource('get_mysql_connect', $link);

        $resource = @mysql_query($query, $link);
        $resource = $this -> checkResource('set_mysql_query',
$resource);
        return $resource;
    }

Gleiche Bedenken habe ich für den Aufruf der Method mysql::fetchAll()...
Kann mir bitte jemand beim Verstehen weiterhelfen und/oder ein paar
Tipps bzgl. der Problematik geben.

Besten Dank
-- 
Mit freundlichen Gruessen / Kind regards

Steffen Kother


php::bar PHP Wiki   -   Listenarchive