PHP致命错误:加载URL时找不到类

sesc360

目前,我正在编码的Web服务中存在一个奇怪的错误。当我加载特定的URL时,我同时获得成功和错误?

这就是我的index.php中的内容:

<?php
require_once 'functions/lib.php';
require_once 'core/init.php';

// Ask for request URL that was submitted and define scriptPath. Explode content of REQUEST URL to evaluate validity.
$requestURL = (($_SERVER['REQUEST_URI'] != "") ? $_SERVER['REQUEST_URI'] : $_SERVER['REDIRECT_URL']);
$scriptPath = dirname($_SERVER['PHP_SELF']);
$requestURL = str_replace($scriptPath, "", $requestURL);
$requestParts = explode("/", $requestURL);
// Check for valid api version
$validAPIVersions = array("v1");
$apiVersion = $requestParts[1];

// If API Version not in valid API array return 404, else OK.
if (!in_array($apiVersion, $validAPIVersions)) {
    httpResponseCode(404);
    echo $GLOBALS['http_response_code'];
    echo "<br>" . "API Version not valid";
    exit();
}

// Check for valid API endpoint
$validEndPoints = array("tickets");
$endPoint = $requestParts[2];
if (!in_array($endPoint, $validEndPoints)) {
    httpResponseCode(404);
    echo $GLOBALS['http_response_code'];
    echo "<br>" . "Endpoint not valid";
    exit();
}

// get the endpoint class name
$endPoint = ucfirst(strtolower($endPoint));
$classFilePath = "$apiVersion/$endPoint.php";

if (!file_exists($classFilePath)) {
    httpResponseCode(404);
    echo $GLOBALS['http_response_code'];
    exit();
}

// load endpoint class and make an instance
try {
    require_once($classFilePath);
    $instance = new $endPoint($requestParts);
} catch (Exception $e) {
    httpResponseCode(500);
    echo $GLOBALS['http_response_code'];
    exit();
}

这是相应的“ Tickets.php”

<?php
echo "OK";
?>

在index.php的最后两行中,我正在加载特定的类(以URL命名)。为了测试,我在这个文件中有一个“ echo“ OK”,这是我加载所需URL时的结果:

http://api.medifaktor.de/v1/tickets

OK
Fatal error: Class 'Tickets' not found in /usr/www/users/kontug/api.medifaktor.de/webservice/index.php on line 45

我得到了我所期望的OK,并且找不到机票的错误。45行是

$instance = new $endPoint($requestParts);

有人可以帮我吗?

最好的塞巴斯蒂安

里奥·贝德罗斯

问题是您没有定义“票证”类。加载tickets.php文件后,您尝试实例化一个类。加载文件与定义类不同。tickets.php(或其他包含的文件中),您需要定义类,如下所示:

class Tickets
{
    // some properties here
    private $endpoint;

    // some methods here
    public function __construct($endpoint)
    {
        $this->endpoint = $endpoint;
    }
}

如果不确定如何用PHP构造类,请阅读《手册》中有关“类”的部分

更新:我在类中为PHP5 +版本添加了一些示例代码。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PHP致命错误:找不到类'MongoDate'

来自分类Dev

PHP致命错误:找不到类“ MongoClient”

来自分类Dev

phpunit找不到类,PHP致命错误

来自分类Dev

php致命错误:找不到类'Slim'

来自分类Dev

找不到php类致命错误

来自分类Dev

PHP致命错误:仍找不到类oauth

来自分类Dev

致命错误:找不到类,使用 php 和 composer 进行简单的自动加载

来自分类Dev

致命错误:找不到类“ ..”

来自分类Dev

致命错误:找不到类“ ..”

来自分类Dev

致命错误:找不到类__

来自分类Dev

PHP致命错误:运行PHP Excel Symfony1.4时找不到类'sfConfig'

来自分类Dev

PHP致命错误:找不到类sqlite3

来自分类Dev

PHP 5.3致命错误类DateTimeZone找不到

来自分类Dev

PHP致命错误:在(laravel)中找不到类'schema'

来自分类Dev

PHP的致命错误:类“苗条”中找不到

来自分类Dev

PHP-Silex:致命错误:找不到类

来自分类Dev

条纹-PHP致命错误:找不到类'Stripe \ Charge'

来自分类Dev

php json-schema-致命错误:找不到类

来自分类Dev

YII PHP致命错误:找不到类“ CWebApplication”

来自分类Dev

致命错误:在php中找不到类配置?

来自分类Dev

PHP致命错误:找不到类'External \\ xBBCode \\ Xbbcode \\ Xbbcode'

来自分类Dev

PHP致命错误:找不到类'Stfalcon \ Bundle \ TinymceBundle \ StfalconTinymceBundle'

来自分类Dev

PHP 致命错误:找不到类“Illuminate\Support\ServiceProvider”

来自分类Dev

致命错误:找不到类“ AppController”错误

来自分类Dev

MongoDB:致命错误:找不到类“ MongoClient”

来自分类Dev

致命错误:找不到类Filesystemiterator

来自分类Dev

致命错误:找不到类“ imagick”

来自分类Dev

致命错误:找不到类“ adLDAP”

来自分类Dev

致命错误:找不到类'NumberFormatter'

Related 相关文章

  1. 1

    PHP致命错误:找不到类'MongoDate'

  2. 2

    PHP致命错误:找不到类“ MongoClient”

  3. 3

    phpunit找不到类,PHP致命错误

  4. 4

    php致命错误:找不到类'Slim'

  5. 5

    找不到php类致命错误

  6. 6

    PHP致命错误:仍找不到类oauth

  7. 7

    致命错误:找不到类,使用 php 和 composer 进行简单的自动加载

  8. 8

    致命错误:找不到类“ ..”

  9. 9

    致命错误:找不到类“ ..”

  10. 10

    致命错误:找不到类__

  11. 11

    PHP致命错误:运行PHP Excel Symfony1.4时找不到类'sfConfig'

  12. 12

    PHP致命错误:找不到类sqlite3

  13. 13

    PHP 5.3致命错误类DateTimeZone找不到

  14. 14

    PHP致命错误:在(laravel)中找不到类'schema'

  15. 15

    PHP的致命错误:类“苗条”中找不到

  16. 16

    PHP-Silex:致命错误:找不到类

  17. 17

    条纹-PHP致命错误:找不到类'Stripe \ Charge'

  18. 18

    php json-schema-致命错误:找不到类

  19. 19

    YII PHP致命错误:找不到类“ CWebApplication”

  20. 20

    致命错误:在php中找不到类配置?

  21. 21

    PHP致命错误:找不到类'External \\ xBBCode \\ Xbbcode \\ Xbbcode'

  22. 22

    PHP致命错误:找不到类'Stfalcon \ Bundle \ TinymceBundle \ StfalconTinymceBundle'

  23. 23

    PHP 致命错误:找不到类“Illuminate\Support\ServiceProvider”

  24. 24

    致命错误:找不到类“ AppController”错误

  25. 25

    MongoDB:致命错误:找不到类“ MongoClient”

  26. 26

    致命错误:找不到类Filesystemiterator

  27. 27

    致命错误:找不到类“ imagick”

  28. 28

    致命错误:找不到类“ adLDAP”

  29. 29

    致命错误:找不到类'NumberFormatter'

热门标签

归档