HEX
Server: Apache/2.4.58 (Ubuntu)
System: Linux ns3133907 6.8.0-86-generic #87-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 22 18:03:36 UTC 2025 x86_64
User: cssnetorguk (1024)
PHP: 8.2.28
Disabled: NONE
Upload Files
File: //home/pvruk.co.uk/public_html/wp-content/plugins/sg-security/vendor/pragmarx/random/src/Faker.php
<?php

namespace PragmaRX\Random;

trait Faker
{
    protected $fakerClass = 'Faker\Factory';

    protected $faker;

    protected $fakerString;

    /**
     * Call faker.
     *
     * @param $name
     * @param $arguments
     * @return mixed
     * @throws \Exception
     */
    public function __call($name, $arguments)
    {
        try {
            $this->fakerString = $this->getFaker()->{$name}(...$arguments);
        } catch (\Error $e) {
            throw new \Exception('Faker is not installed. Call to undefined method PragmaRX\Random\Random::'.$name);
        }

        return $this;
    }

    /**
     * Instantiate and get Faker.
     *
     * @return \Faker\Generator|null
     */
    public function getFaker()
    {
        if (is_null($this->faker) && class_exists($this->fakerClass)) {
            $this->faker = call_user_func("$this->fakerClass::create");
        }

        return $this->faker;
    }

    /**
     * Set the faker class.
     *
     * @param $class
     * @return $this
     */
    public function fakerClass($class)
    {
        $this->fakerClass = $class;

        return $this;
    }
}