


Es gibt viele verschiedene Muster im Designmuster in PHP. Hier stellen wir Ihnen ein weniger häufig verwendetes Datenzuordnungsmuster vor, das Sie sich gemeinsam ansehen können
Der Datenzuordnungsmodus ermöglicht es Ihnen, Ihre Anwendung besser zu organisieren, um mit der Datenbank zu interagieren. Der
-Datenzuordnungsmodus reduziert die Dichte der Kombination zwischen den Attributen des -Objekts und den Tabellenfeldern, in denen sie gespeichert sind. Das Wesentliche des Datenzuordnungsmusters ist eine Klasse, die die Attribute oder Methoden der Klasse den entsprechenden Feldern der Datenbank zuordnet oder übersetzt und umgekehrt.
Die Aufgabe (Arbeit) der Datenzuordnung besteht darin, die von beiden Parteien präsentierten Informationen zu verstehen und den Zugriff auf die Informationen zu steuern, beispielsweise basierend auf den in der Datentabelle gespeicherten Informationen
Erstellen Sie ein neues Domänenobjekt neu oder verwenden Sie Domänenobjektinformationen, um zugehörige Daten in der Datentabelle zu aktualisieren oder zu löschen.
Es gibt viele Implementierungsmethoden zum Speichern der Zuordnungsbeziehung zwischen objektorientiertem Code und Datenbanktabellen und -feldern. Eine mögliche Methode besteht darin, diese Zuordnungsbeziehung durch manuelles Codieren in der Datenzuordnungsklasse zu speichern.
Eine Alternative besteht darin, PHP-Arrays zu verwenden und diese in die Klasse selbst zu kodieren. Diese Klasse kann auch Daten aus externen Quellen beziehen, beispielsweise aus INI- oder XML-Dateien.
Der Datenobjekt-Zuordnungsmodus ordnet Objekte und Datenspeicherung zu. Operationen an einem Objekt werden Operationen an der Datenspeicherung zugeordnet.
Implementieren Sie den Datenobjekt-Zuordnungsmodus im Code und implementieren Sie eine ORM-Klasse, um komplexe SQL-Anweisungen in Objektattributoperationen abzubilden. Objektrelationale Zuordnung (ORM)
ha_cl-Tabelle
Hacl.php
<?php namespace Baobab; class Hacl{ public $id; public $haclname; public $haclcode; public $hacls; protected $db; function construct($id){ $this->db = new \Baobab\Database\Mysqli(); $this->db->connect('127.0.0.1', 'root', '', 'test'); $res = $this->db->query("select * from ha_cl where id = {$id}"); $data = $res->fetch_assoc(); $this->id = $data['ID']; $this->haclname = $data['ha_cl_name']; $this->haclcode = $data['ha_cl_code']; $this->hacls = $data['hacls']; } function destruct(){ $this->db->query("update ha_cl set ha_cl_code = '{$this->haclcode}', ha_cl_name = '{$this->haclname}', hacls = '{$this->hacls}' where ID = {$this->id} limit 1"); } }
Factory.php
<?php namespace Baobab; class Factory{ static function getHacl($id){ $key = 'user_'.$id; $user = \Baobab\Register::get($key);//表中id不同表示的是不同的对象 if(!$user){ $user = new \Baobab\Hacl($id); \Baobab\Register::set($key, $user); } return $user; } }
Register.php
<?php namespace Baobab; class Register{ protected static $objects; static function set($alias, $object){ self::$objects[$alias] = $object; } static function _unset($alias) { unset(self::$objects[$alias]); } static function get($name) { return self::$objects[$name]; } }
index.php
class Page{ function index(){ $hacl = Baobab\Factory::getHacl(13); $hacl->haclname = '测试名称'; $this->test(); echo 'ok'; } function test(){ $hacl = Baobab\Factory::getHacl(13); $hacl->hacls = '测试内容'; } } $page = new Page(); $page->index();
Die Verwendung des Fabrikmusters wird das ObjektHacl mehrmals erstellen, was eine Verschwendung von Ressourcen darstellt Wird als Parameter verwendet. Die Übergabe verursacht einerseits zusätzliche Nutzungskosten, andererseits kann es bei Verwendung dieses Objekts an vielen Stellen leicht zu Fehlern kommen, sodass im Werksmodus der Registrierungsbaummodus verwendet wird dieses Problem lösen.
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Beispiele für den PHP-Datenobjekt-Zuordnungsmodus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Dreamweaver Mac
Visuelle Webentwicklungstools

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

SublimeText3 Englische Version
Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung
