[英]Codeigniter path to specific folder in a model
我正在尝试从模型中定位到项目中的特定文件夹,这在我的本地环境中效果很好,但是当我部署应用程序时,它不起作用:'(
这是模型路径:
项目名称/应用/模块/网站/型号/ model.php
这是文件夹路径
项目名称/网络/客户/ MyFolder文件
现在我如何在本地获得路径是这样的:
FCPATH."myfolder/
当我部署它时,它不起作用并转储非常大的url(可能是因为它是从服务器根目录开始的?
/data/sites/web/hostingname/subsites/staging/www/client/myfolder
有人知道我在做什么错吗?
我知道有APPPATH,但是我不需要应用程序文件夹,我需要与应用程序文件夹处于同一级别的www文件夹
如果有人可以帮助我,我会很酷的:)
提前谢谢了!
如果我这样做,我得到一个空数组:
public function getSlidesForPresentation($presentation)
{
$directory = base_url('/myfolder') ."/". $var."/slides/";
$filepaths = glob($directory . "*");
$slides = array();
foreach($filepaths as $filepath) {
$slide = substr($filepath, strpos($filepath, "/client/") + 8);
$slides[] = $slide;
}
return $slides;
}
If i do this everyhting works great
public function getSlidesForPresentation($presentation)
{
$directory = FCPATH."myfolder/".$var."/slides/";
$filepaths = glob($directory . "*");
$slides = array();
foreach($filepaths as $filepath) {
$slide = substr($filepath, strpos($filepath, "/client/") + 8);
$slides[] = $slide;
}
return $slides;
}
到底是怎么回事?
我做了一个var_dump($ filepaths),我得到了这个:/data/sites/web/hostname/subsites/staging/www/client/myfolder/1/slides/01.jpg
这是图像的文件路径:主机名/子站点/临时/www/client/myfolder/1/slides/01.jpg
所以我不明白为什么找不到图片:'(
您应该尝试使用CI的URl Helper。
尝试使用base_url('www/client/myfolder')
您需要在config.php中声明您的站点基本URL,才能使用此功能。
编辑:
public function getSlidesForPresentation($presentation)
{
$directory = base_url('/myfolder/'.$var.'/slides');
$slides = array();
$handle = opendir($directory);
if ($handle = opendir($directory)) {
while (false !== ($entry = readdir($handle))) {
$slide = substr($entry, strpos($entry, "/client/") + 8);
$slides[] = $slide;
}
return $slides;
}
}
希望对您有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.