pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

    <legend id='1SNEB'><style id='1SNEB'><dir id='1SNEB'><q id='1SNEB'></q></dir></style></legend>

        <bdo id='1SNEB'></bdo><ul id='1SNEB'></ul>

    1. <i id='1SNEB'><tr id='1SNEB'><dt id='1SNEB'><q id='1SNEB'><span id='1SNEB'><b id='1SNEB'><form id='1SNEB'><ins id='1SNEB'></ins><ul id='1SNEB'></ul><sub id='1SNEB'></sub></form><legend id='1SNEB'></legend><bdo id='1SNEB'><pre id='1SNEB'><center id='1SNEB'></center></pre></bdo></b><th id='1SNEB'></th></span></q></dt></tr></i><div class="lg732wu" id='1SNEB'><tfoot id='1SNEB'></tfoot><dl id='1SNEB'><fieldset id='1SNEB'></fieldset></dl></div>
    2. <tfoot id='1SNEB'></tfoot>
      1. <small id='1SNEB'></small><noframes id='1SNEB'>

        使用 file_get_contents 上傳文件

        Upload a file using file_get_contents(使用 file_get_contents 上傳文件)
        • <bdo id='FPkKR'></bdo><ul id='FPkKR'></ul>
            <tbody id='FPkKR'></tbody>

          1. <i id='FPkKR'><tr id='FPkKR'><dt id='FPkKR'><q id='FPkKR'><span id='FPkKR'><b id='FPkKR'><form id='FPkKR'><ins id='FPkKR'></ins><ul id='FPkKR'></ul><sub id='FPkKR'></sub></form><legend id='FPkKR'></legend><bdo id='FPkKR'><pre id='FPkKR'><center id='FPkKR'></center></pre></bdo></b><th id='FPkKR'></th></span></q></dt></tr></i><div class="nqbzy7m" id='FPkKR'><tfoot id='FPkKR'></tfoot><dl id='FPkKR'><fieldset id='FPkKR'></fieldset></dl></div>

              • <legend id='FPkKR'><style id='FPkKR'><dir id='FPkKR'><q id='FPkKR'></q></dir></style></legend>

                <small id='FPkKR'></small><noframes id='FPkKR'>

                1. <tfoot id='FPkKR'></tfoot>
                  本文介紹了使用 file_get_contents 上傳文件的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  限時送ChatGPT賬號..

                  我意識到我可以很容易地使用 CURL 做到這一點,但我想知道是否可以使用 file_get_contents() 和 http 流上下文將文件上傳到遠程 Web 服務器,以及如果是這樣,如何?

                  I realise I can do this with CURL very easily, but I was wondering if it was possible to use file_get_contents() with the http stream context to upload a file to a remote web server, and if so, how?

                  推薦答案

                  首先,multipart Content-Type 的第一條規則是定義一個邊界用作每個部分之間的分隔符(因為顧名思義,它可以有多個部分).邊界可以是內容正文中未包含的任何字符串.我通常會使用時間戳:

                  First of all, the first rule of multipart Content-Type is to define a boundary that will be used as a delimiter between each part (because as the name says, it can have multiple parts). The boundary can be any string that is not contained in the content body. I will usually use a timestamp:

                  define('MULTIPART_BOUNDARY', '--------------------------'.microtime(true));
                  

                  一旦定義了邊界,就必須將它與 Content-Type 標頭一起發送,以告訴網絡服務器期望的分隔符:

                  Once your boundary is defined, you must send it with the Content-Type header to tell the webserver what delimiter to expect:

                  $header = 'Content-Type: multipart/form-data; boundary='.MULTIPART_BOUNDARY;
                  

                  完成后,您必須構建與 HTTP 規范和您發送的標頭相匹配的適當內容正文.如您所知,從表單發布文件時,您通常會有一個表單字段名稱.我們將定義它:

                  Once that is done, you must build a proper content body that matches the HTTP specification and the header you sent. As you know, when POSTing a file from a form, you will usually have a form field name. We'll define it:

                  // equivalent to <input type="file" name="uploaded_file"/>
                  define('FORM_FIELD', 'uploaded_file'); 
                  

                  然后我們構建內容主體:

                  Then we build the content body:

                  $filename = "/path/to/uploaded/file.zip";
                  $file_contents = file_get_contents($filename);    
                  
                  $content =  "--".MULTIPART_BOUNDARY."
                  ".
                              "Content-Disposition: form-data; name="".FORM_FIELD.""; filename="".basename($filename).""
                  ".
                              "Content-Type: application/zip
                  
                  ".
                              $file_contents."
                  ";
                  
                  // add some POST fields to the request too: $_POST['foo'] = 'bar'
                  $content .= "--".MULTIPART_BOUNDARY."
                  ".
                              "Content-Disposition: form-data; name="foo"
                  
                  ".
                              "bar
                  ";
                  
                  // signal end of request (note the trailing "--")
                  $content .= "--".MULTIPART_BOUNDARY."--
                  ";
                  

                  如您所見,我們正在發送帶有 form-data 配置的 Content-Disposition 標頭以及 name 參數(表單字段名稱)和 filename 參數(原始文件名).如果您想正確填充 $_FILES[]['type'] 東西,那么發送帶有正確 MIME 類型的 Content-Type 標頭也很重要.

                  As you can see, we're sending the Content-Disposition header with the form-data disposition, along with the name parameter (the form field name) and the filename parameter (the original filename). It is also important to send the Content-Type header with the proper MIME type, if you want to correctly populate the $_FILES[]['type'] thingy.

                  如果您有多個文件要上傳,您只需使用 $content 位重復該過程,當然,每個文件都有不同的 FORM_FIELD.

                  If you had multiple files to upload, you just repeat the process with the $content bit, with of course, a different FORM_FIELD for each file.

                  現在,構建上下文:

                  $context = stream_context_create(array(
                      'http' => array(
                            'method' => 'POST',
                            'header' => $header,
                            'content' => $content,
                      )
                  ));
                  

                  并執行:

                  file_get_contents('http://url/to/upload/handler', false, $context);
                  

                  注意:在發送二進制文件之前無需對其進行編碼.HTTP 可以很好地處理二進制文件.

                  NOTE: There is no need to encode your binary file before sending it. HTTP can handle binary just fine.

                  這篇關于使用 file_get_contents 上傳文件的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                  【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  enable SOAP on PHP(在 PHP 上啟用 SOAP)
                  Get received XML from PHP SOAP Server(從 PHP SOAP 服務器獲取接收到的 XML)
                  not a valid AllXsd value(不是有效的 AllXsd 值)
                  PHP SoapClient: SoapFault exception Could not connect to host(PHP SoapClient:SoapFault 異常無法連接到主機)
                  Implementation of P_SHA1 algorithm in PHP(PHP中P_SHA1算法的實現)
                  Sending a byte array from PHP to WCF(將字節數組從 PHP 發送到 WCF)
                      <tbody id='mzCFp'></tbody>
                    <legend id='mzCFp'><style id='mzCFp'><dir id='mzCFp'><q id='mzCFp'></q></dir></style></legend>

                    <small id='mzCFp'></small><noframes id='mzCFp'>

                        • <i id='mzCFp'><tr id='mzCFp'><dt id='mzCFp'><q id='mzCFp'><span id='mzCFp'><b id='mzCFp'><form id='mzCFp'><ins id='mzCFp'></ins><ul id='mzCFp'></ul><sub id='mzCFp'></sub></form><legend id='mzCFp'></legend><bdo id='mzCFp'><pre id='mzCFp'><center id='mzCFp'></center></pre></bdo></b><th id='mzCFp'></th></span></q></dt></tr></i><div class="iq83yrm" id='mzCFp'><tfoot id='mzCFp'></tfoot><dl id='mzCFp'><fieldset id='mzCFp'></fieldset></dl></div>
                        • <tfoot id='mzCFp'></tfoot>
                            <bdo id='mzCFp'></bdo><ul id='mzCFp'></ul>
                            主站蜘蛛池模板: 顶空进样器-吹扫捕集仪-热脱附仪-二次热解吸仪-北京华盛谱信仪器 | 西宁装修_西宁装修公司-西宁业之峰装饰-青海业之峰墅级装饰设计公司【官网】 | 博莱特空压机|博莱特-阿特拉斯独资空压机品牌核心代理商 | 江苏远邦专注皮带秤,高精度皮带秤,电子皮带秤研发生产 | 低气压试验箱_高低温低气压试验箱_低气压实验箱 |林频试验设备品牌 | 合肥地磅_合肥数控切割机_安徽地磅厂家_合肥世佳电工设备有限公司 | 不锈钢法兰-碳钢法兰-法兰盘生产加工厂家-[鼎捷峰]-不锈钢法兰-碳钢法兰-法兰盘生产加工厂家-[鼎捷峰] | 实战IT培训机构_IT培训班选大学生IT技术培训中心_中公优就业 | 涡轮流量计_LWGY智能气体液体电池供电计量表-金湖凯铭仪表有限公司 | 披萨石_披萨盘_电器家电隔热绵加工定制_佛山市南海区西樵南方综合保温材料厂 | 回转支承-转盘轴承-回转驱动生产厂家-洛阳隆达轴承有限公司 | 3dmax渲染-效果图渲染-影视动画渲染-北京快渲科技有限公司 | 硬度计_影像测量仪_维氏硬度计_佛山市精测计量仪器设备有限公司厂家 | 一体式钢筋扫描仪-楼板测厚仪-裂缝检测仪-泰仕特(北京) | 集装箱展厅-住人集装箱住宿|建筑|房屋|集装箱售楼处-山东锐嘉科技工程有限公司 | 东莞ERP软件_广州云ERP_中山ERP_台湾工厂erp系统-广东顺景软件科技有限公司 | 私人别墅家庭影院系统_家庭影院音响_家庭影院装修设计公司-邦牛影音 | 东莞螺丝|东莞螺丝厂|东莞不锈钢螺丝|东莞组合螺丝|东莞精密螺丝厂家-东莞利浩五金专业紧固件厂家 | 厂房出租-厂房规划-食品技术-厂房设计-厂房装修-建筑施工-设备供应-设备求购-龙爪豆食品行业平台 | 不锈钢复合板|钛复合板|金属复合板|南钢集团安徽金元素复合材料有限公司-官网 | 【365公司转让网】公司求购|转让|资质买卖_股权转让交易平台 | 贵州科比特-防雷公司厂家提供贵州防雷工程,防雷检测,防雷接地,防雷设备价格,防雷产品报价服务-贵州防雷检测公司 | 数码管_LED贴片灯_LED数码管厂家-无锡市冠卓电子科技有限公司 | 硫化罐-电加热蒸汽硫化罐生产厂家-山东鑫泰鑫智能装备有限公司 | 清管器,管道清管器,聚氨酯发泡球,清管球 - 承德嘉拓设备 | pbt头梳丝_牙刷丝_尼龙毛刷丝_PP塑料纤维合成毛丝定制厂_广州明旺 | 不锈钢监控杆_监控立杆厂家-廊坊耀星光电科技有限公司 | 搪瓷搅拌器,搪玻璃搅拌器,搪玻璃冷凝器_厂家-淄博越宏化工设备 | 北京包装设计_标志设计公司_包装设计公司-北京思逸品牌设计 | 北京软件开发_软件开发公司_北京软件公司-北京宜天信达软件开发公司 | PCB接线端子_栅板式端子_线路板连接器_端子排生产厂家-置恒电气 喷码机,激光喷码打码机,鸡蛋打码机,手持打码机,自动喷码机,一物一码防伪溯源-恒欣瑞达有限公司 假肢-假肢价格-假肢厂家-河南假肢-郑州市力康假肢矫形器有限公司 | 浙江红酒库-冰雕库-气调库-茶叶库安装-医药疫苗冷库-食品物流恒温恒湿车间-杭州领顺实业有限公司 | 上海洗地机-洗地机厂家-全自动洗地机-手推式洗地机-上海滢皓洗地机 | 大型多片锯,圆木多片锯,方木多片锯,板材多片锯-祥富机械有限公司 | PTFE接头|聚四氟乙烯螺丝|阀门|薄膜|消解罐|聚四氟乙烯球-嘉兴市方圆氟塑制品有限公司 | 3D全息投影_地面互动投影_360度立体投影_水幕灯光秀 | 广东银虎 蜂窝块状沸石分子筛-吸附脱硫分子筛-萍乡市捷龙环保科技有限公司 | 聚氨酯催化剂K15,延迟催化剂SA-1,叔胺延迟催化剂,DBU,二甲基哌嗪,催化剂TMR-2,-聚氨酯催化剂生产厂家 | 丹尼克尔拧紧枪_自动送钉机_智能电批_柔性振动盘_螺丝供料器品牌 | 油冷式_微型_TDY电动滚筒_外装_外置式电动滚筒厂家-淄博秉泓机械有限公司 | 冷水机,风冷冷水机,水冷冷水机,螺杆冷水机专业制造商-上海祝松机械有限公司 | 在线浊度仪_悬浮物污泥浓度计_超声波泥位计_污泥界面仪_泥水界面仪-无锡蓝拓仪表科技有限公司 |