test-PDO-class.php 1.19 KB
Newer Older
Quentin Vrel's avatar
Quentin Vrel committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
<?php 
require_once("initPDO.php"); 

class User{
    /*private static function _initInstances(){
        global $pdo;
        if (!isset(self::$_instances)) {
            $request = $pdo->prepare("select * from users");
            $request->execute();
            self::$_instances = [];
            while($line = $request->fetch()){
                $_instances[] = $line;
            }
            print_r($_instances);
        }
    }*/

    private static function getAllUsers(){
        global $pdo;
        $request = $pdo->prepare("select * from users");
        $request->execute();
        $request->setFetchMode(PDO::FETCH_CLASS, get_called_class());
        $users = $request->fetchAll();
        return $users;
    }
    public static function showAllUsersAsTable(){
        $str="<table>
        <tr>
            <th>User</th>
            <th>email</th>
        </tr>";
        foreach (static::getAllUsers() as $value) {
            $str.=$value->toHtml();
        }
        $str.='
                
            </body>
            </html>';
        echo $str;
    }

    private function toHtml(){
        return "<tr>
        <td>$this->name</th>
        <td>$this->email</th>
        </tr>";
    }
}