當前位置:首頁 » 編程語言 » php選擇文件

php選擇文件

發布時間: 2023-03-23 11:29:12

php 獲取file選擇的文件路徑

#接收表單提交變數
$file=$_FILES['BtnPic'];
//print_r($_FILES);PRINT_R($file);
//PRINT_R($file);

//判斷文件是否上傳成功
if(is_uploaded_file($file['tmp_name'])){

//apache文件上傳時臨時儲存路徑,移動到自定義路徑
$upload_file=$file['tmp_name'];
//print_r($upload_file);
$uploadpath=$_SERVER['DOCUMENT_ROOT']."/UploadFile/naotu/";//這塊要注意一下路徑
//下面是你伺服器儲存文件的路徑,可以自定義
$move_to_file=$uploadpath.$file['name'];
//判斷是否移動成功
if(!is_dir($uploadpath)){
mkdir($uploadpath,0777,true);
}
if(move_uploaded_file($upload_file,$move_to_file)){
echo"上傳文件成功";
}else{
echo"上傳失敗";
}
}else{
echo"上傳失敗..請檢查伺服器。";
}

㈡ php文件上傳時對是否已選擇文件的判斷

uploadinghandel.php中第二個if中的$_POST['upfile']前面的!號去掉試試

㈢ php文件如何在控制台運行

1、關鍵是要添加一個針對這個文件的運行配置。

2、先打開菜單Run->Edit Configurations選項。

3、然後在打開的窗口中點擊左上角的+號。

4、在打開的菜單中選擇PHP Script。

5、在打開的界面中找到Configuration->File。

6、選擇你要在控制台運行的文件。

7、填入工作目錄的路徑(可填可不填),完成配置後點擊右下角的OK。

8、回到主界面,點擊菜單Run->Run...。

9、會彈出一些運行選項,其中菜單2指的是從瀏覽器運行(看前面的圖標也能知道),菜單1則是我們想要的「在控制台運行」。只有前面配置好了的文件才能出現在菜單1里。此時點擊這個文件,就會在控制台看到結果啦!

㈣ php實現:一次選擇多個文件上傳

參考代碼如下:
<?php
$max_files=5; //最多上傳文件的個數,與 up.htm 中的 input file 控制項的個數相同
$up_ok_files=0; //成功上傳的文件個數
$up_folder="ups"; //保存上傳文件的目標文件夾
if(isset($_FILES['myfile'])){
//由於 $_FILES['myfile'] 是個數組,所以需要使用循環遍歷
for($i=0;$i<$max_files;$i++){
//如果未出錯
if($_FILES['myfile']['error'][$i]==0){
if(move_uploaded_file($_FILES['myfile']['tmp_name'][$i],$up_folder."/".$_FILES['myfile']['name'][$i])){
//成功上傳後,計數器增 1
$up_ok_files +=1;
}
else{
echo "<h4 style='color:red;'>在伺服器中保存失敗</h4>";
}
}
}
echo "<h4>成功上傳 ".$up_ok_files. " 個文件</h4>";
}
?>
注意:
如果對 $_FILES['myfile'] 這個數組的結構不清楚,可以在循環之前加入這句代碼將其顯示出來:
print_r($_FILES['myfile']);

㈤ PHP5教程之文件操作

一 引論

在任何計算機設備中 文件是都是必須的對象 而在web編程中 文件的操作一直是web程序員的頭疼的地方 而 文件的操作在cms系統中這是必須的 非常有用的 我們經常遇到生成文件目錄 文件(夾)編輯等操作 現在我把php中的這些函數做一詳細總結並實例示範如何使用 關於對應的函數詳細介紹 請查閱php手冊 此處只總結重點 和需要注意的地方 (這在php手冊是沒有的 )( lian )

二 目錄操作

首先介紹的是一個從目錄讀取的函數 opendir() readdir() closedir() 使用的時候是先打開文件句柄 而後迭代列出:

<?php $base_dir = filelist/ ; $fso = opendir($base_dir); echo $base_dir <hr/> ; while($flist=readdir($fso)){ echo $flist <br/> ; } closedir($fso) ?>

這是講返迴文件目錄下面的文件已經目錄的程序( 文件將返回false)

有時候需要知道目錄的信息 可以使用dirname($path)和basename($path) 分別返迴路徑的目錄部分和文件名名稱部分 可用disk_free_space($path)返回看空間空餘空間

創建命令:

mkdir($path )

是許可權碼 在非window下可用umask()函數設置

rmdir($path)

將刪除路徑在$path的文件

dir directory 類也是操作文件目錄的重要類 有 個方法 read rewind close 這是一個仿面向對象的類 它先使用的是打開文件句柄 然後用指針的方式讀取的 這里看php手冊:

<?php$d = dir( /etc/php );echo Handle: $d >handle /n ;echo Path: $d >path /n ;while (false !== ($entry = $d >read())) { echo $entry /n ;}$d >close();?>

輸出:

Handle: Resource id # Path: /etc/php apachecgicli

文件的屬性也非常重要 文件屬性包括創建時間 最後修改時間 所有者 文件組 類型 大小等

下面我們重點談文件操作

三 文件操作

A 讀文件

首先是一個文件看能不能讀取(許可權問題) 或者存在不 我們可以用is_readable函數獲取信息

<?php$file = dirlist php ;if (is_readable($file) == false) { die( 文件不存在或者無法讀取 );} else { echo 存在 ;}?>

判斷文件存在的函數還有file_exists(下面演示) 但是這個顯然無is_readable全面 當一個文件存在的話可以用

<?php$file = filelist php ;if (file_exists($file) == false) { die( 文件不存在 );}$data = file_get_contents($file);echo entities($data);?>

但是file_get_contents函數在較低版本上不支持 可以先創建文件的一個句柄 然後用指針讀取全部:

$fso = fopen($cacheFile r ); $data = fread($fso filesize($cacheFile)); fclose($fso);

還有一種方式 可以讀取二進制的文件:

$data = implode( file($file));

B 寫文件

和讀取文件的方式一樣 先看看是不是能寫:

<?php$file = dirlist php ;if (is_writable($file) == false) { die( 我是雞毛 我不能 );}?>

能寫了的話可以使用file_put_contents函數寫入:

<?php $file = dirlist php ; if (is_writable($file) == false) { die( 我是雞毛 我不能 ); } $data = 我是可鄙 我想要 ; file_put_contents ($file $data); ?>

file_put_contents函數在php 中新引進的函數(不知道存在的話用function_exists函數先判斷一下)低版本的php無法使用 可以使用如下方式:

$f = fopen($file w ); fwrite($f $data); fclose($f);

替換之

寫文件的時候有時候需要鎖定 然後寫:

function cache_page($pageurl $pagedata){ if(!$fso=fopen($pageurl w )){ $this >warns( 無法打開緩存文件 );//trigger_error return false; } if(!flock($fso LOCK_EX)){//LOCK_NB 排它型鎖定 $this >warns( 無法鎖定緩存文件 );//trigger_error return false; } if(!fwrite($fso $pagedata)){//寫入位元組流 serialize寫入其他格式 $this >warns( 無法寫入緩存文件 );//trigger_error return false; } flock($fso LOCK_UN);//釋放鎖定 fclose($fso); return true; }

C 復制 刪除文件

php刪除文件非常easy 用unlink函數簡單操作:

<?php $file = dirlist php ; $result = @unlink ($file); if ($result == false) { echo 蚊子趕走了 ; } else { echo 無法趕走 ; } ?>

即可

復制文件也很容易:

<?php $file = yang txt ; $newfile = ji txt ; # 這個文件父文件夾必須能寫 if (file_exists($file) == false) { die ( 小樣沒上線 無法復制 ); } $result = ($file $newfile); if ($result == false) { echo 復制記憶ok ; } ?>

可以使用rename()函數重命名一個文件夾 其他操作都是這幾個函數組合一下就能實現的

D 獲取文件屬性

我說幾個常見的函數:

獲取最近修改時間:

<?php $file = test txt ; echo date( r filemtime($file)); ?>

返回的說unix的時間戳 這在緩存技術常用

相關的還有獲取上次被訪問的時間fileatime() filectime()當文件的許可權 所有者 所有組或其它 inode 中的元數據被更新時間 fileowner()函數返迴文件所有者

$owner = posix_getpwuid(fileowner($file));

(非window系統) ileperms()獲取文件的許可權

<?php$file = dirlist php ;$perms = substr(sprintf( %o fileperms($file)) );echo $perms;?>

filesize()返迴文件大小的位元組數:

<?php

// 輸出類似 somefile txt: bytes

$filename = somefile txt ; echo $filename : filesize($filename) bytes ;

?>

獲取文件的全部信息有個返回數組的函數stat()函數:

<?php $file = dirlist php ; $perms = stat($file); var_mp($perms); ?>

那個鍵對應什麼可以查閱詳細資料 此處不再展開

四 結束語

lishixin/Article/program/PHP/201311/21262

㈥ php如何查找文件

通過報錯信息我們能夠看到('failed to open stream','Failed opening required'),這是被包含的文件無法打開。造成這種錯誤原因有兩個。
1、在source_index.php這個文件同級目錄下面沒有function.php這個文件。
2、或者是require_once(data/function.php);這條語句寫錯了,造成無法定位到正確的目錄。我在下面再給你介紹一下目錄定位的一些知識。
2.1、require_once("data/function.php");
意思是:調用source_index.php所處目錄下的data目錄下面的function.php文件。
2.2、require_once("/data/function.php");
意思是:調用source_index.php所在目錄根目錄下面的data目錄下面的function.php文件。
2.3、require_once("../data/function.php");
意思是:調用source_index.php上一級目錄下面的data目錄下面的function.php文件。
2.4、require_once("./data/function.php");
意思是:調用source_index.php當前目錄下的data目錄下面的function.php文件,與require_once("data/function.php");該條語句的作用是一樣的。

希望上面的知識能幫你解決這個問題。

熱點內容
mysql打包資料庫 發布:2024-11-05 11:55:29 瀏覽:946
財富連線低利率怎麼配置 發布:2024-11-05 11:45:34 瀏覽:455
達人推源碼 發布:2024-11-05 11:45:34 瀏覽:460
cups腳本重啟不生效 發布:2024-11-05 11:34:19 瀏覽:997
解壓gta5 發布:2024-11-05 11:33:29 瀏覽:200
手游安卓cf怎麼退款 發布:2024-11-05 11:23:28 瀏覽:135
登錄qq時什麼是昵稱和密碼 發布:2024-11-05 11:21:38 瀏覽:955
ftp怎麼設置可以直接打開 發布:2024-11-05 11:20:49 瀏覽:823
問道全敏競技怎麼配置隊伍 發布:2024-11-05 11:20:04 瀏覽:832
app應用下載源碼下載 發布:2024-11-05 11:15:36 瀏覽:841