Home Backend Development PHP Tutorial 1 PHP design pattern---factory pattern

1 PHP design pattern---factory pattern

Jul 29, 2016 am 09:02 AM
addclass database

Basic design patterns
1 PHP 设计模式---工厂模式


1. Factory pattern

<code><span>//如果很多页面都 new 一个Database 对象,那么一旦Database作出改动,则需要在多个</span><span>//页面进行相应的改动。而用工厂模式,只需要改动一个地方。</span><span><?php</span><span>namespace</span><span>IMooc</span>;

<span><span>class</span><span>Factory</span>
{</span><span>static</span><span><span>function</span><span>createDatabase</span><span>()</span>
    {</span><span>$db</span> = <span>new</span> Database();
        <span>return</span><span>$db</span>;
    }
}</code>
Copy after login
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

The above has introduced 1 PHP design pattern---factory pattern, including aspects of it. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to solve discuz database error How to solve discuz database error Nov 20, 2023 am 10:10 AM

The solutions to discuz database error are: 1. Check the database configuration; 2. Make sure the database server is running; 3. Check the database table status; 4. Back up the data; 5. Clear the cache; 6. Reinstall Discuz; 7. Check the server resources ; 8. Contact Discuz official support. Solving Discuz database errors requires starting from multiple aspects, gradually identifying the cause of the problem, and taking corresponding measures to repair it.

Leak reveals key specs of Intel Arrow Lake-U, -H, -HX and -S Leak reveals key specs of Intel Arrow Lake-U, -H, -HX and -S Jun 15, 2024 pm 09:49 PM

IntelArrowLakeisexpectedtobebasedonthesameprocessorarchitectureasLunarLake,meaningthatIntel'sbrandnewLionCoveperformancecoreswillbecombinedwiththeeconomicalSkymontefficiencycores.WhileLunarLakeisonlyavailableasava

Can't drop database 'database_name'; database doesn't exist - How to solve MySQL error: Can't drop database, database doesn't exist Can't drop database 'database_name'; database doesn't exist - How to solve MySQL error: Can't drop database, database doesn't exist Oct 05, 2023 am 11:46 AM

How to solve MySQL error: Unable to delete database, database does not exist Overview: MySQL is a commonly used relational database management system. When using MySQL, we often need to manage the database, including creating databases, deleting databases and other operations. However, when deleting a database, sometimes you will encounter the error message "Can'tdropdatabase'database_name';databasedoesn'texist", that is, you cannot delete it.

Summary of commonly used file operation functions in PHP Summary of commonly used file operation functions in PHP Apr 03, 2024 pm 02:52 PM

目录1:basename()2:copy()3:dirname()4:disk_free_space()5:disk_total_space()6:file_exists()7:file_get_contents()8:file_put_contents()9:filesize()10:filetype()11:glob()12:is_dir()13:is_writable()14:mkdir()15:move_uploaded_file()16:parse_ini_file()17:

SMS API interface calling example based on aggregated data-Python version SMS API interface calling example based on aggregated data-Python version Apr 03, 2024 pm 01:28 PM

1. Apply for the interface through https://www.juhe.cn/docs/api/id/54. Self-service application to open the SMS API and obtain the interface request key. (Currently, the interface only supports enterprise users.) After applying, submit a text message template in the personal center. The official aggregation has provided a number of commonly used templates, which can be quickly applied for. 2. For the official interface document of python code example, please refer to: Https://www.juhe.cn/docs/api/id/54#!/usr/bin/Python#-*-coding:utf-8-*-importurllib, urllib2,sys,JSONreload(

How to add a class in jQuery? How to add a class in jQuery? Apr 03, 2024 am 09:01 AM

This article will explain in detail how to add classes in Jquery? , the editor thinks it is quite practical, so I share it with everyone as a reference. I hope everyone can gain something after reading this article. Two common methods for adding classes in jQuery 1. addClass() method The addClass() method adds one or more classes to the selected element. The syntax is as follows: $(selector).addClass(classNames); where: selector: the element selector to add the class. classNames: Classes to add, can be a single string or a space-separated list of strings. For example, the following code adds ac to the element with the ID my-element

Understand DI dependency injection in PHP in one article Understand DI dependency injection in PHP in one article Apr 03, 2024 pm 01:46 PM

Table of Contents What is DI/Dependency Injection Reasons for Dependency Injection Simple Dependency Injection High-Order Dependency Injection Application of Dependency Injection High-Order Optimization What is DI/Dependency Injection Dependency Injection DI actually refers to the dependence on classes through construction In layman's terms, it means that you are currently operating a class, but some methods or functions of this class cannot be completed by this class alone, but are the most direct sign that it can be completed with the help of another class. That is when the parameter data is passed as an object. Strictly speaking, you want to operate one class in another class. There is an interdependence between the two classes. The method of passing parameters is called injection. The reason why dependency injection occurs is that when dependency injection is not used, PHP needs to be in a When a class uses another class

Handle API authentication with Laravel Passport Handle API authentication with Laravel Passport Apr 03, 2024 pm 01:50 PM

We will learn to create an authentication system using Laravel's PassportapiOAuth. Step 1. Install Laravel We need to use the following command to create a latest Laravel application, so please open the terminal and execute: laravelnewauth Step 2. Install the LaravelPassport package LaravelPassport can implement a complete OAuth2 server for your application in a few minutes. composerrequirelaravel/passport Step 3. Run database migration Passport migration will create your application to store the client and AccessToke

See all articles