We have enabled User registrations.
0 votes
by

請問PHP檔案是什麼?該用什麼來開啟?

我最近上網抓了一些東西,它是PHP檔,可是我不知道要下載什麼來開

,有人可以告訴我嗎?感激不禁

4 Answers

0 votes
by
 
Best answer

.PHP = PHP Script 或者是 .PHP3﹐.PHP4﹐.PH3﹐.PH4

這些檔名的檔案是在侍服器上用來產生 MTML 檔案讓使用者在可以在劉覽器劉覽當

通常用記事本就可以開啟了。

其他常見的 MIME TYPE:

application/x-httpd-php

text/php

application/php

magnus-internal/shellcgi

application/x-php

通常一定 PROGRAM ID﹐但是下面兩個是可能出現的:

PHPEdit.File

phpfile

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat.
SHOW ANSWER
0 votes
by

你可以先把 *.php 改成 *.htm , 再以 IE 去開啟看看是否文字可以正常顯示(圖片可能不行)

若有看到錯誤訊息, 則是對方有連資料庫......你可能只得再上去網站上看了...

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat.
SHOW ANSWER
0 votes
by

php改成文字檔,或者直接用記事本開啟就可以

並不需要用到專業編譯器

你也可以用網頁編輯軟體來開啟

進去看原始碼就是了

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat.
SHOW ANSWER
0 votes
by
PHP檔案總管

PHP對於檔案的處理能力相當完整,我們就利用PHP來寫出一個類似檔案總管的東西來玩玩,如此一來,以後您就可以透過瀏覽器利用此程式來管理您在網路上的檔案了,可以說是相當實用喔!不過由於篇幅有限,所以,我們今天的目標就擺在列出目錄中的檔案,之後我們再來慢慢的加入刪除、上傳、建立目錄的功能。

PHP檔案總管 explorer.php(explorer.php程式碼)

目前這個程式超級簡陋,所以僅能列出htdocs目錄下的檔案,並列出其檔案大小以及修改日期。

用opendir('.')開啟當前目錄,並取得目錄的handle值。

用 readdir($fd),配合 while 迴圈,把目錄下的檔案一個一個讀出來。並把讀出來的檔案名稱指定給$file。

filesize($file)可以取得該檔案的大小。我們把該值指定給$file_size。

filectime()可以取得該檔案的最後修改日期,而date()不過是把日期格式化而已。我們把格式化之後的時間指定給$file_time。

接著就印出檔名、檔案大小、印出檔案的修改日期。

由於我們用的是while($file = readdir($fd)),也就是說,只要readdir()讀得到東西,迴圈就一直執行,直到讀不到東西為止。 如何開啟一個目錄

我們要取得某個目錄下的檔案,第一個動作就是要先開啟目錄,如此,PHP才能讀取裡頭的東西,當我們利用opendir()來開啟目錄時,系統會傳回一個目錄handle值,這是一個整數值,這個handle值就如同我們到銀行辦事時一進門所取得的號碼牌,有了這個號碼牌,我們就可以根據此一號碼牌來做許多的事喔!

opendir('目錄名稱')

傳回值:整數

用途:開啟目錄,並取得目錄的handle值

我們在程式中是這樣寫的: $fd =opendir('.'); 您可能會說:『opendir的括號裡,我沒看見任何的目錄名稱啊?這樣opendir怎麼知道我要開啟哪個目錄呢?』沒錯,一般來說,我們會用opendir('/etc')這樣的方式來開啟etc目錄。

不過,在目錄的概念中,一個小點『.』來代表『目前的目錄』,而『..』則代表上一層目錄。所以opendir('.')所代表的就是開啟目前程式所在的目錄。

由於每次opendir都會傳回一個handle值,所以,我們把這個數字存到$fd變數中,如此,$fd就相當於我們的號碼牌了,我後我們便可以拿著這個$fd號碼牌四處招搖撞騙了哩!

如何進行讀取目錄的動作

開啟歸開啟,若是沒有進行任何的事情也沒用,就好像我們到銀行拿了號碼牌,卻沒有要幹什麼事,那就如同白拿了一樣。所以呢!我們就利用readdir來讀取該目錄裡有哪些檔案。

要讀取目錄,您必須用擁有目錄handle值,因為readdir只認這個號碼來做事喔!所以我們就寫成:readdir($fd),如此readdir便乖乖的拿了您的號碼,然後根據此號碼,乖乖的去讀取目錄囉!

readdir(目錄handle值)

傳回值:字串

用途:根據目錄的handle值來讀取目錄,並傳回目錄下所有的的檔名,其傳回來的檔名沒有任何的順序可言。

而讀取後,readdir便會把讀到的檔名丟回來給您,您必須用個東西來裝著個檔名,於是工友又設了另一個變數$file來存放檔名。

由於一個目錄下通常不只一個檔案,所以,我們必須用迴圈來讀取所有的檔案,因此我們寫成:

while($file = readdir($fd)):

如此一來,while就會不斷的重複『:』之後一直到『endwhile』為止的動作,直到括號裡的條件失敗為止。

什麼叫做『括號裡的條件失敗為止』呢?括號裡的條件是$file = readdir($fd) 也就是讀取檔案,一直讀到沒檔案為止,條件就算失敗啦!所以呢!我們可以利用此方法,完全的把目錄下的東西挖出來。

其實,一般而言,我們迴圈的寫法通常是:

while(條件){

執行的動作

}

不過由於執行的動作裡頭有一堆的HTML碼,為了清爽以及好辨認起見,我們用另一種方式來寫,程式碼會比較易讀:

while(條件):

執行動作

endwhild;

至於我們執行了哪些動作呢?我們執行了:『取得檔案大小、修改日期、印出檔名、檔案大小、修改日期』這些動作。

如何取得檔案的大小

當我們取得一個檔案時,我們可以利用filesize來取得該檔案的大小。

filesize(檔名)

傳回值:整數

用途:取得檔案的大小,單位是byte

filesize函數取得的檔案大小,其單位是以byte為準,由於filesize函數會傳回該檔案的大小,是一串數字,所以,我們也設個變數$file_size來儲存此檔案大小的值。

如何取得檔案的最後修改時間

filectime函數可以取得該檔案的最後修改時間,所以我們把檔案名稱給filectime函數就行了。也就是寫成:filectime($file),不過這個傳回來的時間格式比較特別,此時間的格式是所謂的Unix timestamp(據判斷是從1970年起,到現在的累積總秒數),所以呢!filectime函數取回的時間可是一大串的數字喔!

filectime(檔名)

傳回值:整數

用途:取得檔案的最後修改時間,其時間的呈現方式是Unix timestamp

由於filectime函式傳回來的時間格式是Unix timestamp,一般人是看不懂的,所以我們要把這串時間作「加工」,把他轉成大家都看得懂得樣子。date函式就是專門在做這種事的!

date("日期樣板", timestamp時間)

傳回值:字串

用途:把Unix timestamp的時間,格式化成您熟習的日期格式

基本上,我們要給date函式兩個參數,第一個參數是「時間樣板」,第二個參數就是我們取得的Unix timestamp時間,第一個參數一定要有,第二個參數若是沒給,那麼,date函式會自動取得目前時間來作格式化的動作。

我們再來談談第一個參數「時間樣板」,什麼叫做時間樣板?簡單講,就是把一大串的Unix timestamp時間轉換成「2000年11月25日」這樣的格式。那麼該怎麼做呢?您先看看下面這個表:

格式 說明

a 顯示"am"或"pm"

A 顯示"AM"或"PM"

d 以2位數字來顯示月份,如: "01" to "31"

D 以3個英文字來代表星期幾,如: "Fri"

F 顯示文字型的月份,如: "January"

h 12小時制的時,並以2位數字顯示,如: "01" to "12"

H 24小時制的時,並以2位數字顯示,如: "00"到"23"

g 12小時制的時,如: "1"到 "12"

G 24小時制的時,如: "0"到"23"

i 顯示分,並以2位數字顯示,如: "00"到"59"

j 顯示日期,如: "1"到"31"

l (請注意這是小寫L)以完整的英文顯示星期幾,如: "Friday"

L 顯示該年是否閏年,如:"0"(不是閏年) 或"1"(是閏年)

m 以2位數字顯示月份,如:"01"到"12"

n 顯示月份,如: "1"到"12"

M 以3個英文字來代表月份,如: "Jan"

s 顯示秒數,如: "00" to "59"

S 以2個英文字來代表序數,如: "th", "nd"

t 該月份的天數,如: "28"到"31"

U 自1970/1/1至今的秒數(即timestamp)

w 以數字來顯示星期幾,如: "0"(星期日)到 "6"(星期六)

Y 4位數字的西元年份,如: "1999"

y 2位數字的西元年份,如: "99"

z 顯示一年的第幾天,如: "0"到"365"

Z 時區的偏移秒數 (如: "-43200" to "43200")

看完這個表,我們再來看看我們的程式碼: $file_time=date("Y/m/d a h:i",filectime($file)); 第一部份的"Y/m/d a h:i"就是工友所謂的時間樣板,從上表可得,Y就是4位數的年份,m就是2位數的月份,d就是2位數的日期,a則是指am、pm,h則是12小時制的時,i則是2位數字的分,所以呢,當我們利用filectime($file)取得Unix timestamp時間後,date就會將此時間轉換成我們設定的格式,也就是「2000/11/20 am 09:23」這種樣子。等時間格式轉好後,我們再將此值記錄在變數$file_time之中。

關閉目錄

既然我們剛剛利用opendir函式開啟了某個目錄,那麼等到一切工作結束後,記得養成好習慣,要把目錄給關起來。關起來的方法很簡單,我們只要把用opendir函式得到的目錄handle值,交給closedir函式就成啦!所以我們寫成closedir($fd);就行啦!

closedir(目錄handle值)

傳回值:無

用途:根據目錄的handle值來關閉目錄

【隨堂作業】請自行設計一個簡易型檔案總管吧!
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat.
SHOW ANSWER

Related questions

0 votes
2 answers
+1 vote
2 answers
0 votes
2 answers
0 votes
3 answers
+1 vote
1 answer
0 votes
6 answers
0 votes
3 answers
0 votes
5 answers
Welcome to TheBasicAnswers.com, where you can post questions and receive answers from other members of this portal. Please do not spam here. Spammers will be banned immediately. You can Contact us here
...