php保存路徑
❶ php 把圖片下載本地保存到指定目錄中
/*
*@$urlstring遠程圖片地址
*@$dirstring目錄,可選,默認當前目錄(相對路徑)
*@$filenamestring新文件名,可選
*/
functionGrabImage($url,$dir='',$filename=''){
if(empty($url)){
returnfalse;
}
$ext=strrchr($url,'.');
if($ext!='.gif'&&$ext!=".jpg"&&$ext!=".bmp"){
echo"格式不支持!";
returnfalse;
}
//為空就當前目錄
if(empty($dir))$dir='./';
//
$dir=realpath($dir);
//目錄+文件
$filename=$dir.(empty($filename)?'/'.time().$ext:'/'.$filename);
//開始捕捉
ob_start();
readfile($url);
$img=ob_get_contents();
ob_end_clean();
$size=strlen($img);
$fp2=fopen($filename,"a");
fwrite($fp2,$img);
fclose($fp2);
return$filename;
}
//測試
GrabImage("此處網址/1.jpg","as.gif");
//PS:目錄存在,許可權判斷,自創建等自己應該知道!
//個人喜歡絕對路徑所以就那麼寫了
❷ 請問PHP網頁怎麼查看伺服器存放路徑比如http://45.125.35.144/plus/li
有後台的話後台一般會提供這些信息
沒有的話先看網頁端的header信息判斷出伺服器類型,你這個是iis
然後就從iis中找這個站點的配置信息就有網站目錄
如果是apache或nginx
window系統:要找到相關的service,service里有可執行文件路徑,配置文件也在相應的目錄下可以找到
linux系統可以直接用whereis或find命令查找執行文件位置(apache一般叫httpd),相關的配置文件也可以在對應目錄下找到
❸ php把生成的文件存放在指定目錄
PHP生成文件的時候,都可以執行到你希望存放的目錄,例如(UNIX):
$fp=fopen("/tmp/abc.txt","W");
再如(WINDOWS):
file_put_contents('c:/tmp/abc.txt', '保存的內容');
一般需要注意兩點,一是指定的目錄需要是存在的,如果目錄不存在會報錯,系統並不能夠自動建立目錄。二是對目錄要有許可權。
❹ php保存遠程文件到文件夾
具體看步驟吧:
function getFile($url,$save_dir='',$filename='',$type=0){
if(trim($url)==''){
return false;
}
if(trim($save_dir)==''){
$save_dir='./';
}
if(0!==strrpos($save_dir,'/')){
$save_dir.='/';
}
//創建保存目錄
if(!file_exists($save_dir)&&!mkdir($save_dir,0777,true)){
return false;
}
//獲取遠程文件所採用的方法
if($type){
$ch=curl_init();
$timeout=5;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
$content=curl_exec($ch);
curl_close($ch);
}else{
ob_start();
readfile($url);
$content=ob_get_contents();
ob_end_clean();
}
$size=strlen($content);
//文件大小
$fp2=@fopen($save_dir.$filename,'a');
fwrite($fp2,$content);
fclose($fp2);
unset($content,$url);
return array('file_name'=>$filename,'save_path'=>$save_dir.$filename);
}
getFile($url,$save_dir,$filename,1)//調用
❺ php 如何從數據里選擇所需要信息然後生成csv文件自動保存在指定的路徑(不提示保存,自動)
命令行模式下,或者web模式下保存的路徑在伺服器中,可以達到你的要求(有該路徑的許可權即可)
如果是在web模式下,不提示直接保存到訪客的電腦中的某個位置,是不可以的。
web模式保存到客戶端,只能通過下載,由用戶指定,或保存到默認的下載目錄。
以下是代碼示例:
$dsn='mysql:dbname=testdb;host=127.0.0.1';
$user='dbuser';
$password='dbpass';
//連接資料庫pdo
try{
$dbh=newPDO($dsn,$user,$password,array(PDO::MYSQL_ATTR_INIT_COMMAND=>"SETNAMES'UTF8'"));
}catch(PDOException$e){
echo'Connectionfailed:'.$e->getMessage();exit;
}
//讀取數據,具體sql你根據情況修改
$stat=$dbh->prepare('SELECT*FROM`table`WHERE`id`>0LIMIT100;');
$stat->execute();
$result=$stat->fetchAll(PDO::FETCH_ASSOC);
//創建csv文件並打開文件指針
$filepath='file.csv';
$fp=fopen($filepath,'w');
//寫入數據
foreach($resultas$i=>$row){
//寫入標題行
if($i==0){
fputcsv($fp,array_keys($row));
}
fputcsv($fp,$row);
}
//關閉文件指針
fclose($fp);
//把文件輸出到下載
$file=fopen($filepath,"r");//打開文件
$size=filesize($filepath);
Header("Content-type:application/octet-stream");
Header("Accept-Ranges:bytes");
Header("Accept-Length:".$size);
Header("Content-Disposition:attachment;filename=download.csv");
echofread($file,$size);
fclose($file);
相關知識點:
PHP: fputcsv
PHP:PDO
資料庫查詢的時候只返回列名,防止列出現重復,csv里會有重復的數據