Maison  >  Article  >  php教程  >  Méthodes pour étendre les fonctions et étendre les classes personnalisées dans le framework Laravel

Méthodes pour étendre les fonctions et étendre les classes personnalisées dans le framework Laravel

高洛峰
高洛峰original
2016-12-27 10:47:061420parcourir

1. Développez votre propre classe

Créez le répertoire libraryclass sous app/

Puis myTest.php format de nom de classe camel case myTest

<?php 
class myTest
{
public  function test()
{
return &#39;1asdasd111&#39;;
}
}

dans app/ start /global.php

ClassLoader::addDirectories(array(
app_path().&#39;/commands&#39;,
app_path().&#39;/controllers&#39;,
app_path().&#39;/models&#39;,
app_path().&#39;/database/seeds&#39;,
app_path().&#39;/libraries/class&#39;, //增加这一段
));

Utilisez make pour charger

<?php
class HomeController extends BaseController {
    protected $layout = &#39;layouts.main&#39;;
public function index()
{
$a = App::make(&#39;mytest&#39;); // 用法
echo $a->test();
}
}

2. Développez vos propres fonctions

Créez la fonction des bibliothèques de répertoires

Créez le format de fonction helper.php

, utilisez function_exists comme suit pour éviter les noms en double avec le système

if (! function_exists(&#39;test2&#39;)) 
{
function test2()
{
echo 2222222222222222;
}
}
Méthode 1 :

dans app/filters.php

App::before(function($request) 
{
require app_path().&#39;/libraries/function/helper.php&#39;; //载入 自定义函数
});
Méthode 2 :

Dans app/bootstrap/autolad.php

require __DIR__.&#39;/../app/functions.php&#39;; // 引入自定义函数库
Je pense que la méthode 1 est meilleure.

Pour plus d'articles liés aux fonctions d'extension et aux méthodes d'extension de classes personnalisées dans le framework Laravel, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn