Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP文件中使用类中的函数_Php_Function_Class_Xampp - Fatal编程技术网

如何在PHP文件中使用类中的函数

如何在PHP文件中使用类中的函数,php,function,class,xampp,Php,Function,Class,Xampp,我正在为我的项目开发一个网站。 我的文件夹结构如下所示: /testingSite /src /WordBreaker.php /index.php 在WordBreaker.php中使用函数时出现问题 <?php class WordBreaker { function breakIntoWords($text) { $ranges = $this->breakIntoRanges(

我正在为我的项目开发一个网站。 我的文件夹结构如下所示:

/testingSite
    /src
        /WordBreaker.php
    /index.php
在WordBreaker.php中使用函数时出现问题

<?php
class WordBreaker
    {
        function breakIntoWords($text) 
        {
            $ranges = $this->breakIntoRanges($text);
            $textList = $this->rangesToTextList($text, $ranges);
            return $textList;
        }
    }
?>
下面是如何在WordBreaker.php中定义函数

<?php
class WordBreaker
    {
        function breakIntoWords($text) 
        {
            $ranges = $this->breakIntoRanges($text);
            $textList = $this->rangesToTextList($text, $ranges);
            return $textList;
        }
    }
?>

这里是我想要使用函数的地方(在index.php中)


当我测试站点时,会出现错误

致命错误:在第4行的C:\xampp\htdocs\testingSite\index.php中找不到类“WordBreaker”


我该怎么办?

使用
require\u一次
而不是
include

<?php
    require_once("src/WordBreaker.php");

    $instance = new WordBreaker ();

    if ( isset( $_POST['btnSubmit'] ) ) {
        $result = $instance->breakIntoWords($input);
    }
?>

或者您可以添加自动加载功能

<?php 
   function __autoload($class_name) {
      require_once $class_name . '.php';
   }

   $vars = new IUarts(); 
   print($vars->data);    
?>

您可以使用目录包含它

require __DIR__."/src/WordBreaker.php";

$instance = new WordBreaker();
_DIR_uu是“神奇的”,返回当前文件的目录,不带尾随斜杠


“如果在包含中使用,则返回包含文件的目录。这相当于dirname(u文件u)。此目录名没有尾随斜杠,除非它是根目录。”

这是一个旁注,但由于您需要可用的WordBreaker类,将
include
更改为
require
,我怀疑您将得到一个找不到的错误,或者至少是一个我们可以找到的错误。它不起作用。我收到了相同的错误消息。考虑到您提供的代码和信息,这似乎不太可能。也许可以尝试提供WordBreaker类的全部内容。以下是WordBreaker.php的代码,请尝试使用
new phlontagaam\WordBreaker()
。该类是在命名空间中定义的。这无法修复它,如果找不到该文件,将导致另一个错误。您能解释一下吗?我认为这仍然是有意义的,因为如果文件不存在,那么您将知道有错误。是的,您将知道有错误。但这并不能解决问题,它仍然不起作用。