PHP code example of oddvalue / link-builder

1. Go to this page and download the library: Download oddvalue/link-builder 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/ */

    

oddvalue / link-builder example snippets




namespace App;

use Oddvalue\LinkBuilder\Link;

class ArticleLink extends Link
{
    /**
     * The attribute on the model from which the link href is derived
     *
     * @var string
     */
    protected $hrefAttribute = 'slug';

    /**
     * The attribute on the model to use as the link text
     *
     * @var string
     */
    protected $labelAttribute = 'title';
}



namespace App;

use App\ArticleLink;
use Oddvalue\LinkBuilder\Contracts\Linkable;
use Oddvalue\LinkBuilder\Traits\LinkableTrait;

class LinkableModel implements Linkable
{
    use LinkableTrait;

    public $title;
    public $slug;

    /**
     * Get the fully qualified class name of the model's link generator
     *
     * @return string
     */
    protected function getLinkGeneratorClass()
    {
        return ArticleLink::class;
    }
}

$options = [
    'attributes' => [
        'class' => ['button', 'is-disabled'],
        'role' => 'button',
        'disabled',
    ]
];

echo (string) $model->getLinkGenerator($options);
echo (string) get_link($model, $options);

# output:
# <a href="/bar" class="button is-disabled" role="button" disabled>foo</a>
# <a href="/bar" class="button is-disabled" role="button" disabled>foo</a>
 php
$model = new Article;

echo $model->getLinkGenerator()->toHtml();
# output: <a href="/bar">foo</a>

echo (string) $model->getLinkGenerator();
# output: <a href="/bar">foo</a>

echo $model->getLinkGenerator()->label();
# output: foo

echo $model->getLinkGenerator()->href();
# output: /bar
 php
echo get_link($model)->toHtml();
# output: <a href="/bar">foo</a>

echo (string) get_link($model);
# output: <a href="/bar">foo</a>

echo get_link($model)->label();
# output: foo

echo get_link($model)->href();
# output: /bar