Eine PHP-Bibliothek, mit der Sie Ihre Modelle einfach mit PDO erstellen und definieren können
FETCH_INTO leicht gemacht $ composer require lodev09/php-models
Die Hauptklasse ModelsDB ist ein PDO-Wrapper, der CRUD wesentlich einfacher macht. Es handelt sich um einen gespaltenen Code aus der PHP-PDO-Wrapper-Klasse
// connect to your database. Store the $db instance globally -- you only need to connect to your db ONCE!
$ db = new Models DB ( DB_HOST , DB_NAME , DB_USER , DB_PASSWORD );Verfügbare CRUD -Methoden
$db->insert($sql, $binds) oder $db->insert($table, $values)$db->select($sql, $binds)$db->row($sql, $binds) (das Gleiche gilt für select , gibt aber eine einzelne Zeile zurück)$db->update($sql, $binds) oder $db->update('table', $values)$db->delete($sql, $binds) oder $db->delete('table', $filters) Der Standardstil ist PDO::FETCH_OBJ
Beispiel:
$ users = $ db -> select ( " SELECT * FROM users WHERE active = 1 AND username = :username " , array ( ' username ' => ' lodev09 ' ));
var_dump ( $ users ); Die Klasse ModelsModel ist eine übergeordnete Klasse, die an eine Model -Klasse vererbt werden kann. Durch die Vererbung dieser Klasse können Sie die Ergebniszeile automatisch Ihrer Modellklasse (Tabelle) zuordnen. Diese Klasse verwendet grundsätzlich den PDO::FETC_INTO -Stil und macht es Ihnen einfacher. Hier sind die Schritte, um Ihre Tabelle mit einer Klasse zu verknüpfen:
ModelsDB Instanz (siehe oben). $ db = new Models DB ( DB_HOST , DB_NAME , DB_USER , DB_PASSWORD );
Models Model:: setDb ( $ db );User.php -Klasse namespace Models ;
class User extends Model {
public function getName () {
return $ this -> name ;
}
} // somewhere in your init.php
Models User:: register ( ' users ' ); Jetzt können Sie die User direkt aus einer Abfrage abrufen. Beispiel:
$ user = Models User:: row ( " SELECT id, name FROM users WHERE id = 1 AND active = 1 " );
// you can call the getName() method now
if ( $ user ) {
$ name = $ user -> getName ();
echo ' His name is ' . $ name ;
}Alle Fehler, Funktionsanfragen, Pull-Anfragen, Rückmeldungen usw. sind willkommen. Besuchen Sie meine Website unter www.lodev09.com oder senden Sie mir eine E-Mail an [email protected]
© 2018 – Codiert von Jovanni Lo / @lodev09
Veröffentlicht unter der MIT-Lizenz. Siehe LICENSE-Datei.