本文目录一览:
- 1、PHP复制文件(copy函数)代码出错 failed to open stream: No such file or directory
- 2、php程序安装打开出现内容编码错误
- 3、PHP :dirname(__FILE__)获取路径不正确?怎么回事
- 4、php 系统路径dirname(__FILE__)输入的是反斜杠“\”,一般路径都是斜杠“/”,这不冲突吗???
PHP复制文件(copy函数)代码出错 failed to open stream: No such file or directory
你在copy函数的上一行把$source和$desc都打印出来看一下,报错的信息是文件或路径不存在,应该是个路径错误
php程序安装打开出现内容编码错误
亲,很高兴为你解答:
这可能是与服务器的全局配置有关:
1、服务器不支持这种压缩格式,可使用function_exists('ob_gzhandler')判断,解决方法 ob_start('ob_gzhandler')改为ob_start();
2、使用ob_start('ob_gzhandler')时候前面已经有内容输出,检查前面内容以及require include调用文件的内容。若无法找到可以在调用其它文件前使用ob_start(),调用之后使用 ob_end_clean () 来清除输出的内容;
也有可能是文件中包含了BOM头,你可以用以下程序检查:
?php
if (isset($_GET['dir'])){ //设置文件目录
$basedir=$_GET['dir'];
}else{
$basedir = '.';
}
$auto = 1;
checkdir($basedir);
function checkdir($basedir){
if ($dh = opendir($basedir)) {
while (($file = readdir($dh)) !== false) {
if ($file != '.' $file != '..'){
if (!is_dir($basedir."/".$file)) {
echo "filename: $basedir/$file ".checkBOM("$basedir/$file")." br";
}else{
$dirname = $basedir."/".$file;
checkdir($dirname);
}
}
}
closedir($dh);
}
}
function checkBOM ($filename) {
global $auto;
$contents = file_get_contents($filename);
$charset[1] = substr($contents, 0, 1);
$charset[2] = substr($contents, 1, 1);
$charset[3] = substr($contents, 2, 1);
if (ord($charset[1]) == 239 ord($charset[2]) == 187 ord($charset[3]) == 191) {
if ($auto == 1) {
$rest = substr($contents, 3);
rewrite ($filename, $rest);
return ("font color=redBOM found, automatically removed./font");
} else {
return ("font color=redBOM found./font");
}
}
else return ("BOM Not Found.");
}
function rewrite ($filename, $data) {
$filenum = fopen($filename, "w");
flock($filenum, LOCK_EX);
fwrite($filenum, $data);
fclose($filenum);
}
?
运行后看一下程序输出就可以了,有BOM头的会有红字提示。
-----------------------------------
如有疑问欢迎追问!
满意请点击右上方【选为满意回答】按钮 么么哒o(∩_∩)o
PHP :dirname(__FILE__)获取路径不正确?怎么回事
语句包含并运行指定文件。
( $XXXX 是变量名 )
dirname() 返回路径中的目录部分
例如
$path = "/etc/passwd.php";
$file = dirname($path);
$file 就是/etc
__FILE__ 是PHP的魔术常量 表示当前文件的完整路径和文件名
basename() 返回路径中的文件名部分
例如
$path = "/home/httpd/html/index.php";
$file = basename($path);
$file 就是 index.php
整句话就是 载入一个在你项目路径中do文件夹下的跟你当前文件同名的文件
如果正确 请采纳我
php 系统路径dirname(__FILE__)输入的是反斜杠“\”,一般路径都是斜杠“/”,这不冲突吗???
主要是windows和linux环境区别! win下面物理路径是\ ,linux下是/,但一般用/,已保证兼容性,如果你用的是\那么在linux上可能就会出问题。纯手打,望采纳。