php写文件 路径的格式

我自己的理解:如果路径以/开头,比如:fopen("/test.txt","a");应该会写到网站的根目录吧?可是,我实验了下,却写到了硬盘的根目录,而不是网站所在的根目... 我自己的理解:
如果路径以 / 开头,比如:fopen("/test.txt", "a");
应该会写到网站的根目录吧?
可是,我实验了下,却写到了硬盘的根目录,而不是网站所在的根目录。

请问该怎么办。
我是 win + apache
奇怪,补充的问题怎么不见了
展开
 我来答
千锋教育
2015-12-11 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
可以直接使用绝对路径。
如果是Windows可以直接写“C:/Cache/”
如果是Linux可以直接写“/Cache/”,需先改cache的权限为777.看看报什么错。在PHP的最前面加上error_reporting(E_ALL & ~E_NOTICE);相对路径是相对fopen所在的PHP文件即a.php而言的。
$f = fopen("cache/$filename", 'ab);
如果a.php在根目录下的b文件夹:
$f = fopen("../cache/$filename", 'ab);
5idev
推荐于2017-12-15 · TA获得超过507个赞
知道小有建树答主
回答量:169
采纳率:0%
帮助的人:87.3万
展开全部
resource fopen ( string filename, string mode [, bool use_include_path [, resource zcontext]] )

关于参数 filename ,如果被指定是文件名而非网络 URL ,那么 PHP 认为 filename 指定的是一个本地文件。所以会以服务器实际路径去解析。
如果要 fopen() 要指定打开网站根目录文件,一般使用 $_SERVER['DOCUMENT_ROOT'] :
fopen($_SERVER['DOCUMENT_ROOT']."/test.txt", "a");
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友113faafa67c
2011-01-26 · TA获得超过1839个赞
知道小有建树答主
回答量:1200
采纳率:0%
帮助的人:926万
展开全部
<?php
$imgdir = '你存放图片的文件夹';
$logfile = '你要写入的文件名';
$submit = $_POST['submit'];
if($submit == 'write'){
include('lib/write.class.php');
$wt = new writeTo();
$wt->while($imgdir,$logfile);
}
?>
<input type = 'submit' name = 'submit' value = 'write'>
这个是前提文件

下面的是类文件
<?php
class writeTo{
function isjpg($filename){
/*
用来判断是否是 .jpg结尾的文件 由于本机器无JPG 所以使用PHP
代替了JPG 你自己使用的时候请自行替换
*/
if(preg_match('/\.php$/',$filename)){
return true;
}
false;
}
function listjpg($dir){//查看文件夹内的所有JPG文件名并存入数组
$arr = array();
if(is_dir($dir)){
$dp=dir($dir);
while($file=$dp->read()){
if($this->isjpg($file)){
$arr[substr($file,0,(strlen($file)-4))] = $file;
}
}
}
$dp->close();
return $arr;
}
function write($dir,$filename){//利用前面生成的数字重写文件
if($link = fopen($filename,'w+')){
//由于使用W+所以如果存在该文件请给予读写权限 如不存在则程序自动建立
$str = "<?xml version='1.0' encoding='utf-8'?>\n";
$str .= " <path>\n";
$arr = $this->listjpg($dir);
foreach($arr as $key => $v){
$str .= " <url info=".$key.">pic/".$v."</url>\n";
}
$str .= " <\path>\n";
if(fwrite($link,$str)){
fclose($link);
return true;
}
return false;
}
return false;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式