php上传文件到服务器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php上传文件到服务器相关的知识,希望对你有一定的参考价值。

php做的网页, 生成一些txt文件, 这些是后台的工作,那要如何把这些文件上传到另一指定的服务器上呢? apache+php+mysql 的配置环境,安装后启动apache和mysql,打开浏览器输入http://127.0.0.1/回车后,页面也能正常输出。
<?php
$ftp_server = "192.168.1.19";//本机地址
$ftp_user_name = "yuling";
$ftp_user_pass = "753422gP";
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");
$file = 'home.txt';
$remote_file = '/xampp/a.txt';
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

if (ftp_put($conn_id, $remote_file, $file, FTP_BINARY))
echo "文件移动成功\n";
else
echo "移动失败\n";

ftp_close($conn_id);
?>

1、通过PHP,可以把文件上传到服务器。创建一个文件上传表单,下面这个供上传文件的 html 表单:

<html>
<body>

<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" name="submit" value="Submit" />
</form>

</body>
</html>

2、创建上传脚本,命名为"upload_file.php" 文件含有供上传文件的代码:

<?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 "Stored in: " . $_FILES["file"]["tmp_name"];
  
?>

注:通过使用 PHP 的全局数组 “$_FILES”,就可以实现从客户计算机向远程服务器上传文件。

参考技术A 所你那一推网站,用上传工具上传到指定服务器,如flashfxp本回答被提问者采纳

PHP 上传文件到其他服务器

PHP 上传文件到其他服务器

标签(空格分隔):

安装Guzzle类库

**guzzle**  是发送网络请求的类库
composer安装:**composer require guzzlehttp/guzzle**
中文文档[**https://guzzle-cn.readthedocs.io/zh_CN/latest/quickstart.html**]

文件上传

<?php
    use GuzzleHttp\Client;
    
    public $upload_type;  // 发送类型 'image|video|file'
    
    public function shopUpload ($name)
    
        $file = fopen($_FILES[$name]['tmp_name'], 'r')
        $response = (new Client())->request(
            'POST',    //post 请求
            'http://www.xxx.cm/upload',
            [
                // name: (必须,字符串) 映射到表单字段的名称。
                // contents: (必须,混合) 提供一个字符串,可以是 fopen 返回的资源、或者一个
                
                'multipart' => [   //设置
                    [
                        'name'     => $name,
                        'contents' => $file,
                        'filename' => $_FILES[$name]['name'],
                        'type' => $_FILES[$name]['type']
                    ],
                    [
                        'name' => 'file_name',   // 上传表单的name值
                        'contents' => $name
                    ],
                    [
                        'name' => 'upload_type',  // 上传文件类型
                        'contents' => $this->upload_type,
                    ],
                ]
            ]
        );
        $resultMap = json_decode($response->getBody()->getContents(), true);
    
    
    
    

服务器接收

function upload ()

    直接获取 $_FILES;

以上是关于php上传文件到服务器的主要内容,如果未能解决你的问题,请参考以下文章

PHP表单文件上传到Mysql和服务器

用php如何把一些文件和图片上传到另一指定的服务器

PHP文件上传

文件上传问题。PHP些的云存储服务器,调用平台接口上传文件(例如阿里云等)。

求php 以上超大文件上传和断点续传服务器的实现

PHP使用FTP上传文件到服务器(实战篇)