PHP code example of bambamboole / extended-faker

1. Go to this page and download the library: Download bambamboole/extended-faker library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

bambamboole / extended-faker example snippets


use Faker\Factory;
use Bambamboole\ExtendedFaker\Providers\en_US\Product;

$faker = Factory::create('en_US');
$faker->addProvider(new Product($faker));

$product = $faker->product();              // random ProductDto
$product = $faker->generateProduct(42);    // deterministic by seed
$same    = $faker->productBySku($product->sku); // round-trips to the same product
$de      = $faker->getProductInLocale($product->sku, 'de_DE'); // same SKU, localized

use Bambamboole\ExtendedFaker\Providers\en_US\Category;

$faker->addProvider(new Category($faker));

$category = $faker->category();          // Random category
$categoryName = $faker->categoryName();  // "Electronics"

use Bambamboole\ExtendedFaker\Providers\en_US\BlogPost;

$faker->addProvider(new BlogPost($faker));

// Random blog post (dynamically generated)
$post = $faker->blogPost();
// BlogPostDto with title, content, excerpt, tags, author, etc.

// Specific blog post methods
$title = $faker->blogPostTitle();        // "Getting Started with Docker in 2024"
$content = $faker->blogPostContent();    // Full markdown content
$excerpt = $faker->blogPostExcerpt();    // Short summary
$tags = $faker->blogPostTags();          // ["docker", "devops", "containers"]
$author = $faker->blogPostAuthor();      // "Michael Chen"
$category = $faker->blogPostCategory();  // "technology"
$readingTime = $faker->blogPostReadingTime(); // 2 (minutes)

// Get post by dynamically generated slug
$slug = $post->slug;
$retrievedPost = $faker->blogPostBySlug($slug);

// Cross-locale blog posts work with any generated slug
$enPost = $faker->blogPost();
$dePost = $faker->getBlogPostInLocale($enPost->slug, 'de_DE');

use Bambamboole\ExtendedFaker\Providers\en_US\Page;
use Bambamboole\ExtendedFaker\Page\PageType;

$faker->addProvider(new Page($faker));

// Named fixture-backed page
$page = $faker->page('about');
// PageDto with title, slug, content blocks, excerpt, template, seo, etc.

// Typed page lookup
$pricing = $faker->page(PageType::Pricing);
$about = $faker->pageByType(PageType::About);

// Render page content
$content = $faker->pageContent('about');      // Markdown content
$blocks = $faker->pageBlockContent('about');  // WordPress block markup
$seo = $faker->pageSeo('about');              // SEO title and description

// Cross-locale pages work with shared slugs
$dePage = $faker->getPageInLocale($page->slug, 'de_DE');
$aboutPage = $faker->pageBySlug('about', 'en_US');

use Faker\Factory;
use Bambamboole\ExtendedFaker\ExtendedFaker;

// Automatically registers Product, Category, BlogPost, and Page providers
$faker = Factory::create('en_US');
ExtendedFaker::extend($faker, 'en_US');

// Now use any provider
$product = $faker->product();
$category = $faker->category();
$blogPost = $faker->blogPost();
$page = $faker->page();

// German locale
$fakerDe = Factory::create('de_DE');
ExtendedFaker::extend($fakerDe, 'de_DE');

$faker->productImageDto();              // ImageDto -> images/products/{category}/{n}.webp
$faker->productImage();                 // path, e.g. "images/products/cell-phones-smartphones/3.webp"
$faker->category()['image'];            // "images/categories/electronics.webp"
$faker->page('about')->image;           // "images/pages/about.webp"
$faker->pageImage('about');             // same path