Download the PHP package robertogallea/laravel-visitor without Composer

On this page you can find all versions of the php package robertogallea/laravel-visitor. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-visitor

LaravelVisitor

1. Introduction

LaravelVisitor is a Visitor Design Pattern implementation for Laravel. It allows to easily execute processing of collections of arbitrary elements, without requiring to use repeated conditionals, thus improving code abstraction.

Without Visitor:

With Visitor:

All of the complexity is hidden in the MyVisitor class, which must define methods for processing classes. In the previous example, MyVisitor would be implemented as:

Additionally this enforces SRP principle, since Domain Objects don't have to implement representational methods, which are only responsibility of the Visitor classes implementation (especially if several are required).

2. Installation

Install the package via composer:

composer require robertogallea/laravel-visitor

3. Usage

For using the package, you need to define at least one Visitor and some Visitee classes.

3.1. Visitees implementation

The only requirement for Visitees is to use the Visitable trait, so you can make any class visitable.

3.2. Visitors implementation

A Visitor class must impelemnt the CanVisit interface and subclass the Visitor abstract class, by defining the getResult() method.

Additionally, for each defined Visitee's you have to implement a processing method of your choice. For example, if you have a Book Visitee, you must define the method:

3.3. Visitors generation

To generate Visitor, you can launch the following artisan commands:

php artisan make:visitor MyVisitor

which by default creates classes in the Visitors folder.

4. Example usage:

4.1. Visitee implementation

Magazine.php

4.2. Visitor implementation

XMLVisitor.php

4.3. Client code

will produce the following output:

5. Issues, Questions and Pull Requests

You can report issues and ask questions in the issues section. Please start your issue with ISSUE: and your question with QUESTION:

If you have a question, check the closed issues first.

To submit a Pull Request, please fork this repository, create a new branch and commit your new/updated code in there. Then open a Pull Request from your new branch. Refer to this guide for more info.


All versions of laravel-visitor with dependencies

PHP Build Version
Package Version
Requires illuminate/support Version ^5.8.3|^6.0.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package robertogallea/laravel-visitor contains the following files

Loading the files please wait ....