PHP调用类文件之间的函数/方法

时间:2017-04-21 02:00:41

标签: php class

我需要从一个单独的类文件中调用一个函数,让我们说:

class Functions {

    public function seoUrl($string)
    {
       $string = strtolower($string);
       $string = preg_replace("~[^\p{L}\p{N}\n]+~u", "-", $string);
       $string = preg_replace("/[\s-]+/", " ", $string);
       $string = preg_replace("/[\s_]/", "-", $string);
       return $string;
    }

}

我想在另一个类文件中调用Functions::seoUrl()

class Product {

    public function goto_url($url)
    {
       return Functions::seoUrl($url);
    }

}

我收到错误:

  

致命错误:在C:\ xampp \ htdocs中找不到类'函数'...

2 个答案:

答案 0 :(得分:1)

函数:: seoUrl()是调用静态方法的方法。您需要将方法seoUrl(string)声明为static,或者为Functions类创建一个对象

$functions = new Functions();
$functions->seoUrl(string);

答案 1 :(得分:1)

这里只是因为你的PHP无法找到class Functions而致命致命为此你有require提出两个选项,或者为此添加一些autoloading

<?php

require_once 'Functions.php'// where your Class functions resides.

class Product
{

    public function goto_url($url)
    {
        return Functions::seoUrl($url);
    }

}