當前位置:首頁 » 編程語言 » php獲取文件名後

php獲取文件名後

發布時間: 2023-05-28 23:13:19

php怎麼獲取被包含文件名

看了你上面追問我知道你需要幹啥了..
沒必要這樣,你可以用環境變數找出當前網站的URI
變數是這樣的:$_SERVER['REQUEST_URI']
如果地址是 .com/asd.php
那麼返回的值就是 /asd.php
也就是截取/後面的所有內容
如果是動態頁面你可以用函數
ereg來抓取當前頁面
也就是
if (ereg('index.php', $_SERVER['REQUEST_URI'])) {}
相類似..
上喚棗面的地址如果是 xxx/index.php?action=xxx
那麼判斷依腔鏈燃然伍虛成立..

⑵ php獲取文件夾下所有文件名

function dir_file_handle($dir,$dir_handle,$file_handle,&$array=NULL) {
$array = array();
function circle($dir,$dir_handle,$file_handle,&$array){
$handle=opendir($dir);
while(($file=readdir($handle))!==false){
if($file!="." && $file!=".."){
if(is_dir("$dir/$file")){
//文件夾操作
eval($dir_handle);
circle("$dir/$file",$dir_handle,$file_handle,&$array);
}else{
//文件操作
eval($file_handle);
}
}
}
}
@circle($dir,$dir_handle,$file_handle,$array);
}
function list_dir_file($array) {
$indent = 0;
static $preindent = 0;
while (list($key,$value) = each($array)) {
$indent = count(explode('/', $key));
if ($indent == 1) {
$indent = $preindent;
}else {
$preindent = $indent;
}
$dirname = substr(strrchr($key, '/'), 1);
if (is_array($value)) {
echo str_repeat("", $indent)."|-$dirname<br>";
list_dir_file($value);
}else {
echo str_repeat("", $indent*2)."$value<br>";
}
}
}

dir_file_handle(
'./01',
'
if(is_null($array["$dir"])) {
$array["$dir"] = array();
}
if(is_null($array["$dir/$file"])) {
$array["$dir/$file"] = array();
}
',
'array_push($array["$dir"],$file);',
$array
);
list_dir_file($array);

⑶ php 獲取指定文件夾內的文件名,不要擴展名

試試這個謹鏈
<?php
$path = array("./test");//文件夾名
foreach($path as $val){
$dir_handle = @opendir($val) or die("Unable to open $val");
echo "Directory Listing of $val<br/>";
while ($file = readdir($dir_handle))
{
echo "<option value='祥毀孫$file'>" . str_replace( '余敬.' . pathinfo($file,PATHINFO_EXTENSION), '',$file ) . "</option>";
}
closedir($dir_handle);
echo "<br>";
}
?>

⑷ php中怎麼從路徑中取出文件名

1.basename($path) — 返迴路徑中的文件名部分
2.scandir(/dir) 列出指定路徑中的文件和目錄

你應該試下 第一個

⑸ PHP 如何 得到文件名(不要後綴名)

方法如下:

$dh = opendir($dirname);

$n = 0;

while ($file=readdir($dh)){

// $file為目錄下所有文件和文件夾,

// 需要注意默認有 .(本目錄)和..(上級目錄)這兩個特殊文件夾

if (is_file($file)){

//只處理文件

if (!strpos($file,'.')){

// 無後綴名的文件

}

$n++; // 計數

}

}

⑹ PHP如何得到文件名(不要後綴名)

方法如下:

$dh = opendir($dirname);

$n = 0;

while ($file=readdir($dh)){

// $file為目錄下所有文件和文件夾,

// 需要注意默認有 .(本目錄)和..(上級目桐殲錄)這兩個特殊文件夾

if (is_file($file)){

//只處理文件

if (!strpos($file,'.')){

// 無後綴局蘆沖名的文件

}

$n++; // 計嘩哪數

}

}

⑺ php怎樣找文件名的後幾個字母


目前防採集的方法有很多種,先介紹一下常見防採集策略方法和它的弊端及採集對策:

一、判斷一個IP在一定時間內對本站頁面的訪問次數,如果明顯超過了正常人瀏覽速度,就拒絕此IP訪問
弊端:
1、此方法只適用於動態頁面,如:asp\jsp\php等…靜態頁面無法判斷某個IP一定時間訪問本站頁面的次數
2、此方法會嚴重影響搜索引擎蜘蛛對其收錄,因為搜索引擎蜘蛛收錄時,瀏覽速度都會比較快而且是多線程。此方法也會拒絕搜索引擎蜘蛛收錄站內文件
採集對策:只能放慢採集速度,或者不採
建議:做個搜索引擎蜘蛛的IP庫,只允許搜索引擎蜘蛛快速瀏覽站內內容。搜索引擎蜘蛛的IP庫的收集,也不太容易,一個搜索引擎蜘蛛,也不一定只有一個固定的IP地址。
評論:此方法對防採集比較有效,但卻會影響搜索引擎對其收錄。

二、用javascript加密內容頁面

弊端:此方法適用於靜態頁面,但會嚴重影響搜索引擎對其收錄情況,搜索引擎收到到的內容,也都是加密後的內容
採集對策:建議不採,如非要采,就把解密碼的JS腳本也採下來。
建議:目前沒有好的改良建議
評論:建議指望搜索引擎帶流量的站長不要使用此方法。

三、把內容頁面里的特定標記替換為」特定標記+隱藏版權文字「

弊端:此方法弊端不大,僅僅會增加一點點的頁面文件大小,但容易反採集
採集對策:把採集來的含有隱藏版權文字內容的版權文字替掉,或替換成自己的版權。
建議:目前沒有好的改良建議
評論:自己感覺實用價值不大,就算是加上隨機的隱藏文字,也等於畫蛇添足。

四、只允許用戶登陸後才可以瀏覽
弊端:此方法會嚴重影響搜索引擎蜘蛛對其收錄
採集對策:目前落伍已經有人發了對策文章 ,具體對策就看這個吧《ASP小偷程序如何利用XMLHTTP實現表單的提交以及cookies或session的發送》
建議:目前沒有好的改良建議
評論:建議指望搜索引擎帶流量的站長不要使用此方法。不過此方法防一般的採集程序,還是有點效果的。

五、用javascript、vbscript腳本做分頁
弊端:影響搜索引擎對其收錄
採集對策:分析javascript、vbscript腳本,找出其分頁規則,自己做個對應此站的分頁集合頁即可。
建議:目前沒有好的改良建議
評論:感覺懂點腳本語言的人都能找出其分頁規則

六、只允許通過本站頁面連接查看,如:Request.ServerVariables(」HTTP_REFERER」)
弊端野返:影響搜索引擎對其收錄
採集對策:不知道能不能模擬網頁來源。。。。目前我沒有對應此方法的採集對策
建議:目前沒有好的改良建議
評論:建議指望搜索引擎帶流量的站長不要使用此方法。不過此方法防一般的採集程序,還是有點效果的。

從以上可以看出,目前常用的防採集方法,要麼會對搜索引擎收錄有較大影響,要麼防採集效果不好,起不到防採集的效果。那麼,還有沒有一種有效防採集,而又不影響搜索引擎收錄的方法呢?那就請繼續往下看吧褲氏,精彩的地方馬上呈獻給大家。

下面就是我的防採集策略,防採集而又不防搜索引擎

從前面的我講的採集原理大家可以看出,絕大多數採集程序都是靠分析規則來進行採集的,如分析分頁文件名規則、分析頁面代碼規則。

一、分頁文件名規則防採集對策

大部分採集器都是靠分析分頁文件名規則,進行批量、多頁採集的。如果別人找不出你的分頁文件的文件名規則,那麼別人就無法對你的網站進行批量多頁採集。
實現方法:
我認為用MD5加密分頁文件名是一個比較好的方法,說到這里,有人會說,你用MD5加密分頁文件名,頌純飢別人根據此規則也可以模擬你的加密規則得到你的分頁文件名。

我要指出的是我們加密分頁文件名時,不要只加密文件名變化的部分
如果I代表分頁的頁碼,那麼我們不要這樣加密
page_name=Md5(I,16)&」.htm」

最好給要加密的頁碼上再跟進一個或多個字元,如:page_name=Md5(I&「任意一個或幾個字母」,16)&」.htm」

因為MD5是無法反解密的,別人看到的會頁字母是MD5加密後的結果,所以加人也無法知道你在 I 後面跟進的字母是什麼,除非他用暴力****MD5,不過不太現實。

二、頁面代碼規則防採集對策

如果說我們的內容頁面無代碼規則,那麼別人就無法從你的代碼中提取他們所需要的一條條內容。
所以我們要的這一步做到防採集,就要使代碼無規則。
實現方法:
使對方需要提取的標記隨機化
1、定製多個網頁模板,每個網頁模板里的重要HTML標記不同,呈現頁面內容時,隨機選取網頁模板,有的頁面用CSS+DIV布局,有的頁面用table布局,此方法是麻煩了點,一個內容頁面,要多做幾個模板頁面,不過防採集本身就是一件很煩瑣的事情,多做一個模板,能起到防採集的作用,對很多人來說,都是值得的。
2、如果嫌上面的方法太麻煩,把網頁里的重要HTML標記隨機化,也可以。

做的網頁模板越多,html代碼越是隨機化,對方分析起內容代碼時,就越麻煩,對方針對你的網站專門寫採集策略時,難度就更大,在這個時候,絕大部分人,都會知難而退,因為這此人就是因為懶,才會採集別人網站數據嘛~~~再說一下,目前大部分人都是拿別人開發的採集程序去採集數據,自己開發採集程序去採集數據的人畢竟是少數。

還有些簡單的思路提供給大家:
1、把對數據採集者重要,而對搜索引擎不重要的內容用客戶端腳本顯示
2、把一頁數據,分為N個頁面顯示,也是加大採集難度的方法
3、用更深層的連接,因為目前大部分採集程序只能採集到網站內容的前3層,如果內容所在的連接層更深,也可以避免被採集。不過這樣可能會給客戶造成瀏覽上的不便。
如:
大多網站都是 首頁—-內容索引分頁—-內容頁
如果改成:
首頁—-內容索引分頁—-內容頁入口—-內容頁
註:內容頁入口最好能加上自動轉入內容頁的代碼

⑻ 怎樣用PHP代碼自動獲得文件名

<?php

$db = mysql_connect("localhost", "root");

mysql_select_db("store",$db);

function CheckPHPExE($filename){
$img_exts = array("jpg");
foreach($img_exts as $this_ext){
if(preg_match("/\.$this_ext$/",$filename)){
return true;
}
}
return false;
}

function listDir($dir){
if(is_dir($dir)){
if ($dh = opendir($dir)){
while (($file= readdir($dh)) !== false){
if((is_dir($dir."/".$file)) && $file!="." && $file!=".."){
listDir($dir."/".$file."/");
}else{
if($file!="." && $file!=".."){
if(CheckPHPExE($file)){
$file = Eregi_replace($file,".jpg","");
$sql = "INSERT INTO cart (proct_images) VALUES ('$file')";
$result = mysql_query($sql);
// echo $file."<br>";
}
}
}
}
closedir($dh);
}
}
}

listDir("c:\wamp\www\img ");

echo "<script>alert(' 運行完成');</script>";

?>

回復一下你的疑惑:
程序只是一個簡單的、最基本的代碼,還有具體的檢測部分是需要你自己去完成的,我只是給你一個簡單的基本的思路來引導你一下。
1 程序沒有寫執行次數,100張圖片有3000多也許是你執行了30次

2 thubm.db是系統的一個文件,隱藏屬性的,在普通模式下是看不見的,它也插入進資料庫中是因為程序沒有代碼檢測文件是不是JPG文件。只要是那個文件夾下的文件都會插入進資料庫中。

3 只想插入XXXX的,還是可以加文件名判斷,。

以上加了一個文件類型判斷,還有就是執行完會彈出個窗口提示下,不至於你運行N次,判斷資料庫紀錄等

⑼ php獲取file文件名

<?php
if($_FILES["file"]["error"]>0){
echo"Error:".$_FILES["file"]["error"]."<br/>";
}
else{
echo"Upload:".$_FILES["file"]["name"]."<br/>";
echo"Type:".$_FILES["file"]["type"]."<br/>";
echo"Size:".($_FILES["file"]["size"]/1024)."Kb<br/>";
echo"Storedin:".$_FILES["file"]["tmp_name"];
}
?>
<metacharset="UTF-8">
<formaction=""method="post"enctype="multipart/form-data">
<inputtype="file"name="file"><br/>
<inputtype="submit"value="提交">
</form>

通過使用 PHP 的全局數組 $_FILES,你可以從客戶計算機向遠程伺服器上傳文件。

第一個參數是表單的 input name,第二個下標可以是 "name", "type", "size", "tmp_name" 或 "error"。就像這樣:

$_FILES["file"]["name"] - 被上傳文件的名稱

$_FILES["file"]["type"] - 被上傳文件的類型

$_FILES["file"]["size"] - 被上傳文件的大小,以位元組計

$_FILES["file"]["tmp_name"] - 存儲在伺服器的文件的臨時副本的名稱

$_FILES["file"]["error"] - 由文件上傳導致的錯誤代碼


望採納 Thx

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:336
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:378
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:612
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:32
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:944
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:741
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:803
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:511
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:372