Php 由于路径问题,图像类函数无法正常工作

Php 由于路径问题,图像类函数无法正常工作,php,unix,nginx,centos,wamp,Php,Unix,Nginx,Centos,Wamp,我正在使用以下功能: class Image { static function url($id, $type = 'maps') { $path = UPLOAD_DIRECTORY . '/' . $type . '/'; $files = glob($path . $id . '.*'); if (count($files)) { $ext = substr($files[0], strpos($file

我正在使用以下功能:

  class Image {

    static function url($id, $type = 'maps') {
        $path = UPLOAD_DIRECTORY . '/' . $type . '/';
        $files = glob($path . $id . '.*');
        if (count($files)) {
            $ext = substr($files[0], strpos($files[0], '.') - strlen($files[5]));
            return SERVER_URL . 'img/' . $type . '/' . $id . $ext;
        } else {
            return '';
        }
    }

}
当托管在WAMP上时,它可以正常工作,但在运行在nginx上的Unix上使用时,由于文件路径的原因,它无法正确显示图像。它似乎在URL中添加了文件的物理路径,因此它认为文件的补丁是正确的

在WAMP上,它正确显示,即URL为

以下是定义的变量:

define('SERVER_URL', 'http://localhost/demo/');
define('UPLOAD_DIRECTORY', dirname(__FILE__) . '/img');
id=20

图像的物理位置在/public\u html/demo/img/maps中/


如何在unix操作系统上修复此问题

设法找到了解决方案(顺便说一句,我不是程序员)

基本上,在UNIX服务器上,映像所在的目录在路径中有一个点,而在wamp上则没有


因此,我要做的是使用strrpost而不是strpost-这将查找字符串中最后一次出现的子字符串的位置,而不是第一次出现的位置。

能否编辑主题,使其有意义?将
PHP
作为标记添加到标记列表中。并组织你的问题的内容,因为不清楚你想问什么。谢谢你的反馈。