Home Backend Development PHP Problem The application of adapter mode and strategy mode in PHP

The application of adapter mode and strategy mode in PHP

Jun 23, 2021 pm 03:17 PM
strategy pattern adapter

There are too many patterns in PHP that we need to understand and master. I wonder how many patterns you have mastered after studying for so long? How much do you know about the use of adapter mode and strategy mode in PHP? This article will teach you about the use of adapter mode and strategy mode in PHP. Let’s learn together

Related recommendations:What is the observer pattern in PHP? How to use it?

Adapter:

There are many adapters in life. The power adapter is the transformer inside 220v

can convert - a class The interface is converted into another interface that the customer wants, so that the originally incompatible interfaces can work together. The popular understanding is to adapt different interfaces into a unified interface

Similarly, we create a new file and define a class class. There is a method in the class class. We know such a class, but we only have one Method, and at this time we need to expose an interface to the outside world, so how do we implement the adapter pattern through a class? We continue to write a class, because the following class is a new class we added, so we can write any member method, And when we create an object, we need to save the object passed in; let’s take the code as an example:

<?php
interface PerfectMan
{
  function cook();
  function writePhp();
}
class Wife
{
  function cook( )
{
  echo &#39;最犀利的剑,只为最强大的手所挥动<br />&#39;;
}
}
class Man implements PerfectMan
{
  protected $wife;
  //在创建对象的时候保存传递进来的对象
  function __onstruct($wife)
  {
  $this->wife = $wife;
  }
  function cook( )
  {
    $this->wife->cook();
  }
  function writePhp()
  {
    echo &#39;我会写php代码<br />&#39;;
}
}
$li = new Wife();
$ming = new Man( ) ;
$ming->writePhp();
$ming->cook();
Copy after login

Strategy mode:

(1) Multiple classes only distinguish When expressing different behaviors, you can use Strategy mode to dynamically select the specific

behavior to be executed at runtime.

(2) Different strategies (algorithms) need to be used in different situations, or the strategy may be implemented in other ways

in the future.

(3) The implementation details of specific strategies (algorithms) are hidden from customers and are completely independent of each other.

(4) The client must know all the strategy classes and decide which one to use. The strategy mode is only applicable

when the client knows all the algorithms or behaviors. .

(5) The strategy model creates many strategy classes, and each specific strategy class will generate a new class.

Advantages:

1. Strategy mode provides a way to manage related algorithm families

2. The algorithm is enclosed in an independent Strategy class so that You can change it independently of its Context

3. Using strategy mode can avoid using multiple conditional transfer statements

The code is as follows:

<?php
interface Love
{
  function sajiao();
}
class KeAi implements Love
{
  function sajiao( )
{
  echo &#39;心怀不惧,才能翱翔于天际<br />&#39;;
}
}
class Tiger implements Love
{
  function sajiao( )
{
  echo &#39;智商太低会传染,离我远点<br />&#39; ;
}
}
class GirlFriend
{
  protected $xingge;
  function __construct($xingge)
{
  $this->xingge = $xingge ;
}
  function sajiao( )
{
  $this->xingge->sajiao();
}
}
$keai = new KeAi;
$li = new GirlFriend($keai);
$li ->sajiao();
Copy after login

Execution result As follows:

The application of adapter mode and strategy mode in PHP

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of The application of adapter mode and strategy mode in PHP. For more information, please follow other related articles on the PHP Chinese website!

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)
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Have Crossplay?
1 months 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 enable/disable Wake on LAN in Windows 11 How to enable/disable Wake on LAN in Windows 11 Sep 06, 2023 pm 02:49 PM

Wake on LAN is a network feature on Windows 11 that allows you to remotely wake your computer from hibernation or sleep mode. While casual users don't use it often, this feature is useful for network administrators and power users using wired networks, and today we'll show you how to set it up. How do I know if my computer supports Wake on LAN? To use this feature, your computer needs the following: The PC needs to be connected to an ATX power supply so that you can wake it from sleep mode remotely. Access control lists need to be created and added to all routers in the network. The network card needs to support the wake-up-on-LAN function. For this feature to work, both computers need to be on the same network. Although most Ethernet adapters use

USB to HDMI adapter not working properly on Windows 11/10 USB to HDMI adapter not working properly on Windows 11/10 Feb 19, 2024 pm 12:00 PM

If you're having issues with your USB to HDMI adapter not working properly on Windows, it could be because of an outdated graphics card driver or a problem with the adapter itself. The following content will help you resolve this dilemma. Fix USB to HDMI adapter not working on Windows 11/10 Use the following solutions to fix USB to HDMI adapter not working on Windows 10/11: Update Display Adapter Driver Rollback Graphics Driver Unplug and Plug USB to HDMI Adapter Updated BIOS Let's get started. 1] Update Display Adapter Driver Issues may be caused by outdated or corrupted display adapter drivers. You can try downloading from the official website of the manufacturer

How to check network connection details and status on Windows 11 How to check network connection details and status on Windows 11 Sep 11, 2023 pm 02:17 PM

In order to make sure your network connection is working properly or to fix the problem, sometimes you need to check the network connection details on Windows 11. By doing this, you can view a variety of information including your IP address, MAC address, link speed, driver version, and more, and in this guide, we'll show you how to do that. How to find network connection details on Windows 11? 1. Use the "Settings" app and press the + key to open Windows Settings. WindowsI Next, navigate to Network & Internet in the left pane and select your network type. In our case, this is Ethernet. If you are using a wireless network, select a Wi-Fi network instead. At the bottom of the screen you should see

Microsoft Wi-Fi Direct Virtual Adapter: What does it do? Microsoft Wi-Fi Direct Virtual Adapter: What does it do? Jun 29, 2023 pm 12:33 PM

You may be wondering what the Microsoft Wi-Fi Direct Virtual Adapter does on your PC. Better rest assured that this network adapter is Microsoft and completely secure. But if the adapter is messing up your activity and you're wondering if it's worth keeping, this guide will give you everything you need to know. What does the Microsoft Wi-Fi Direct virtual adapter do? As the name suggests, Microsoft Wi-Fi Direct Virtual Adapter helps make your PC a wireless hotspot. This way, other computers can connect to your PC to access the Internet. It does this by virtualizing wireless network adapters. This way, your single physical wireless adapter is converted into two virtual

Win7 wireless network adapter is missing Win7 wireless network adapter is missing Dec 23, 2023 pm 05:57 PM

Many users have reported that the win7 wireless network adapter has disappeared. In this case, it is likely that there is a problem with the network card or network card driver. We only need to repair the network card driver or replace a good network card to solve the problem. The wireless network adapter disappeared in win7 1. First, right-click the Start button and select "Device Manager" 2. Then we find the "Network Adapter", right-click and choose to update the driver first, or disable the device first and then enable it. You can also click here "Properties" 3. After clicking Properties, click "Driver" above, click "Update Driver" here 4. Click here and select "Automatically search and update driver files" 5. After completion, you can also change the computer's network Reset it. First, press win

Your iPhone won't charge after iOS 17 update? Here's what you can do Your iPhone won't charge after iOS 17 update? Here's what you can do Sep 21, 2023 pm 11:41 PM

What is the cause of iOS17 charging problem? There are several possible reasons why your iPhone may not be charging after updating to iOS17. One possibility is that there is a bug in the software update. Apple is usually quick to fix bugs in iOS updates, so if you're having charging issues it's worth checking to see if a new update is available. Another possibility is that there is a problem with the charging cable or adapter. If you're using a third-party charging cable or adapter, make sure it's certified by Apple. How to Fix iPhone Not Charging Issue Here are some tips on how to fix iPhone not charging issue after iOS17 update: Restart your Apple phone This usually resolves minor issues that may be the root cause of iOS17 charging issue

Fix: System driver locked to manufacturer specifications Fix: System driver locked to manufacturer specifications Sep 23, 2023 pm 07:25 PM

Graphics driver is one of the most important drivers on your PC, directly affecting performance and gaming experience. However, many people encounter the "Your system has drivers locked to manufacturer specifications" error when updating drivers through the installer. This issue occurs because the manufacturer restricts updates unless they are specifically pushed from their end. This ensures stability, but may be an issue for many people. So, let’s find out how to solve the problem now! How to fix your system with drivers locked to manufacturer specifications on Windows 11? Before we move on to slightly more complicated solutions, try these quick fixes: Make sure your computer and operating system meet the driver's system requirements. Boot your computer into safe mode, then

What are the practical application cases of strategy pattern in java framework? What are the practical application cases of strategy pattern in java framework? Jun 05, 2024 pm 08:44 PM

The strategy pattern in the Java framework is used to dynamically change class behavior. Specific applications include: Spring framework: data validation and cache management JakartaEE framework: transaction management and dependency injection JSF framework: converters and validators, response life cycle management

See all articles