PHP檢測遠端文件是否存在

簡單解釋一下上面的代碼。get_headers的作用就是訪問一個遠程地址,把服務器發送的HTTP頭以數組形式返回。而$header[0]則是服務器返回的狀態碼(如果不出意外的話狀態碼應該都是第一個返回的)。

要確定一個文件在遠端服務器上存在,只需要確定訪問這個文件返回的狀態碼是”HTTP/1.1 200 OK”就行了(當然你也可以判斷如果狀態碼不是”HTTP/1.1 404 Not Found”的話則文件存在,不過總感覺不保險,畢竟還有其他的諸如301,400這類的狀態碼)。

獲取三位HTTP響應碼的例子:

<?php  function get_http_response_code($theURL) {  $headers = get_headers($theURL);  return substr($headers[0], 9, 3);  
}  ?>

排除重定向的例子:

<?php/*** Fetches all the real headers sent by the server in response to a HTTP request without redirects* 獲取不包含重定向的報頭*/function get_real_headers($url,$format=0,$follow_redirect=0) {if (!$follow_redirect) {//set new default options$opts = array('http' =>array('max_redirects'=>1,'ignore_errors'=>1));stream_context_get_default($opts);}//get headers$headers=get_headers($url,$format);//restore default optionsif (isset($opts)) {$opts = array('http' =>array('max_redirects'=>20,'ignore_errors'=>0));stream_context_get_default($opts);}//returnreturn $headers;
}?>

本文固定鏈接: http://www.xssxss.com/fuck/323.xss | Shine的圣天堂-〃敏〃

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/276722.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/276722.shtml
英文地址,請注明出處:http://en.pswp.cn/news/276722.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C#中使用DTS來導入數據及相關問題

向Sql 中導入Excel數據時&#xff0c;使用MS SQL的DTS功能 可以很方便的導入&#xff0c;同時引用Dll文件&#xff0c;可以在程序中對導入過程進行控制。 創建DTS包的過程如下&#xff1a; &#xff11;。在&#xff33;&#xff31;&#xff2c;企業管理器中&#xff0c;工具菜…

html select選擇事件_一道搜狗面試題:IO多路復用中select、poll、epoll之間的區別...

(1)select>時間復雜度O(n)它僅僅知道了&#xff0c;有I/O事件發生了&#xff0c;卻并不知道是哪那幾個流(可能有一個&#xff0c;多個&#xff0c;甚至全部)&#xff0c;我們只能無差別輪詢所有流&#xff0c;找出能讀出數據&#xff0c;或者寫入數據的流&#xff0c;對他們…

【MySQL】redo log --- 刷入磁盤過程

1、redo log基本概念 redo log的相關概念這里就不再過多闡述&#xff0c;網上有非常多的好的資料&#xff0c;可以看下縹緲大神的文章&#xff1a;https://www.cnblogs.com/cuisi/p/6525077.html&#xff0c;個人感覺介紹的非常詳細。 2、數據更改過程簡述 MySQL 在更新數據的時…

WPF DataGrid根據內容設置行顏色

轉&#xff1a; https://code.4noobz.net/wpf-change-color-of-a-row-in-a-datagrid-depending-on-the-value/ 轉載于:https://www.cnblogs.com/Mindy-hym/p/11475024.html

QQ web api

QQ的很多功能和信息可以通過web方式獲得&#xff5e;以下鏈接&#xff0c;星號應換成你要查詢的QQ號一、Activities Previewhttp://labs.qq.com/ie8/preview/?uin******二、QQ空間訪問次數查詢&#xff08;需權限&#xff09;http://g.qzone.qq.com/fcg-bin/cgi_emotion_list.…

delphi tclientsocket接收不到返回數據_RS—485中教你主站發送報文結構、從站返回報文結構?系列11...

作者&#xff1a;馬樂1.主站發送報文結構大家可以看到我之前寫的文章中的程序都是沒有什么具體功能的&#xff0c;都是兩個站點之間互相傳遞數據&#xff0c;這些數據我們只是看看是否可以正常接收發送&#xff0c;數據本身是沒有任何含義的。很明顯在實際使用過程中我們是不會…

MybatisPlus 通用枚舉無法正確取值

正常使用mybatisplus <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.0.4</version></dependency> 使用后發現項目中原先對枚舉值的轉換存在異常&#xff1a; ER…

零基礎學習 Python 之條件語句

寫在之前 我們寫程序&#xff0c;就好比學生時代寫作文一樣&#xff0c;由 “字” 到 “詞” 到 “句” 最后到 “文章” 。此前我們學會了一些詞語&#xff08;對象類型&#xff09;&#xff0c;我們接下來就是學如何造句&#xff0c;而在編程語言里&#xff0c;句子被叫做語句…

python input 文件名_Python播放音頻與錄音

這一講主要介紹些音頻基本處理方式&#xff0c;為接下來的語音識別打基礎。三種播放音頻的方式使用 python 播放音頻有以下幾種方式&#xff1a;os.system()os.system(file) 調用系統應用來打開文件&#xff0c;file 可為圖片或者音頻文件。缺點&#xff1a;要打開具體的應用&a…

jQuery選擇器和方法的等價關系

層級選擇器 1、ancestor descendant &#xff08;后代選擇器&#xff09; 在給定的祖先元素下匹配所有的后代元素 $(“form input”) $(.div span)選取<div>里的所有的<span>元素 2、parent child &#xff08;子選擇器&#xff09;在給定的父元素下匹配所有…

ActionScript 3.0 Step By Step系列(四):來自面向對象開發之前的吶喊:“學會寫可重用的代碼”...

增強代碼的可重用能力&#xff0c;從創建可重用的代碼開始&#xff0c;可重用的代碼則是通過從現有代碼中重構加以封裝,使其成為功能單一的可復用代碼塊。這句話籠統點說便是“封裝”或“抽象”。 在實際的編程開發中&#xff0c;要實現代碼重用&#xff0c;而不是每次都去Copy…

express利用nodemailer發送郵件(163郵箱)

Nodemailer 是一個簡單易用的Node.js郵件發送組件 首先安裝這個組件 npm install nodemailer --save安裝之后&#xff0c;可以在某個get請求下&#xff0c;發送郵件&#xff0c;具體路由代碼&#xff1a; const express require("express"); const nodemailer requ…

使用 Solid 私有化存儲 IPFS 文件哈希值

背景 星際文件系統 IPFS&#xff08;InterPlanetary File System&#xff09;是一個面向全球的、點對點的分布式文件系統&#xff0c;目標是為了補充&#xff08;甚至是取代&#xff09;目前統治互聯網的超文本傳輸協議&#xff08;HTTP&#xff09;&#xff0c;將所有具有相同…

使用window.postMessage實現跨域通信

JavaScript由于同源策略的限制,跨域通信一直是棘手的問題。當然解決方案也有很多&#xff1a; document.domainiframe的設置&#xff0c;應用于主域相同而子域不同&#xff1b;利用iframe和location.hash&#xff0c;數據直接暴露在了url中&#xff0c;數據容量和類型都有限Fla…

appium啟動app失敗_Appium-Desktop Capability 配置及啟動App演示

Appium-Desktop Capability配置介紹desired capability的功能是配置Appium會話。為什么要配置capability&#xff0c;目的就是為了告訴Appium服務器您想要自動化的平臺和應用程序。Desired Capabilities是一組設置的鍵值對的集合&#xff0c;其中鍵對應設置的名稱&#xff0c;而…

WinRAR 命令行簡體中文說明

從命令行也可以運行 WinRAR 命令&#xff0c;常規的命令行語法描述如下:WinRAR - -命令 要 WinRAR 運行的字符組合代表功能。開關 切換操作指定類型&#xff0c;壓縮強度&#xff0c;壓縮文件類型&#xff0c;等等的定義。壓縮文件 要處理的壓縮文件名。文件 要處理的文件名。列…

以Windows服務方式運行.NET Core程序

原文:以Windows服務方式運行.NET Core程序在之前一篇博客《以Windows服務方式運行ASP.NET Core程序》中我講述了如何把ASP.NET Core程序作為Windows服務運行的方法&#xff0c;而今&#xff0c;我們又遇到了新的問題&#xff0c;那就是&#xff1a;我們的控制臺程序&#xff0c…

SparkSession.read().csv()無法定位本地文件的問題

原因是spark有兩個文件頭 [file://]代表本地 [hdfs://]代表hdfs路徑 如果路徑沒有文件頭&#xff0c;spark會將該路徑默認添加上"hdfs://" 所以如果要訪問本地csv文件&#xff0c;需要確保路徑前面有"file://" //java代碼&#xff0c;告訴spark這是本地文件…

JavaScript的10種跨域共享的方法

在客戶端編程語言中&#xff0c;如javascript和ActionScript&#xff0c;同源策略是一個很重要的安全理念&#xff0c;它在保證數據的安全性方面有著重要的意義。同源策略規定跨域之間的腳本是隔離的&#xff0c;一個域的腳本不能訪問和操作另外一個域的絕大部分屬性和方法。那…

好用的shell工具_精選5個酷斃的Python工具

來自&#xff1a;Python之禪工欲善其事必先利其器&#xff0c;一個好的工具能讓起到事半功倍的效果&#xff0c;Python社區提供了足夠多的優秀工具來幫助開發者更方便的實現某些想法&#xff0c;下面這幾個工具給我的工作也帶來了很多便利&#xff0c;推薦給追求美好事物的你。…