用phpexcel做导出execl的时候发现在本地没有问题,但是把网站传到租用的服务器的时候就报错,具体如下:
Warning: realpath() [function.realpath]: open_basedir restriction <span>in</span> effect. File(/tmp) <span>is</span> not within the allowed path(s): (/data/home:/usr/home:/data/home/tmp:/usr/home/tmp:/<span>var</span>/www/disablesite) <span>in</span> /data/home/【服务器名称】/htdocs/【项目地址】/Classes/PHPExcel/Shared/File.php on line <span>136</span><span> 找到对应的File.php的136行,只是sys_get_temp_dir方法的最后一行,查阅网上的方法直接把该方法给替换掉就好了。 </span>
代码如下:
<span>public static function sys_get_temp_dir()<br />{<br />if</span> (ini_get(<span>'</span><span>upload_tmp_dir</span><span>'</span>)!==<span>false</span><span>)
{
</span><span>if</span>($temp = ini_get(<span>'</span><span>upload_tmp_dir</span><span>'</span><span>))
{
</span><span>if</span><span> (file_exists($temp))
{
</span><span>return</span><span> realpath($temp);
}
}
}
</span><span>if</span> ( !function_exists(<span>'</span><span>sys_get_temp_dir</span><span>'</span><span>))
{
</span><span>if</span> ($temp = getenv(<span>'</span><span>TMP</span><span>'</span><span>))
{
</span><span>if</span><span> (file_exists($temp))
{
</span><span>return</span><span> realpath($temp);
}
</span><span>if</span> (($temp!=<span>''</span>) &&<span> file_exists($temp))
{
</span><span>return</span><span> realpath($temp);
}
}
</span><span>if</span> ($temp = getenv(<span>'</span><span>TEMP</span><span>'</span><span>))
{
</span><span>if</span><span> (file_exists($temp))
{
</span><span>return</span><span> realpath($temp);
}
}
} <br />}</span>以上就介绍了PHPExcel中open_basedir restriction in effect的解决方法,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号