PHP-第19行D:\xammp\htdocs\ch4 image gallery\views\upload.PHP中的数组到字符串转换

PHP-第19行D:\xammp\htdocs\ch4 image gallery\views\upload.PHP中的数组到字符串转换,php,Php,我正在尝试创建一个简单的上传图像功能。为此,我有以下两个片段 表单以上载新图像 <?php // Form to upload images return "<h1>Upload New Images</h1> <form method='post' action='index.php?page=upload' enctype='multipart/form-data'> <lebel>Find an image to

我正在尝试创建一个简单的上传图像功能。为此,我有以下两个片段

  • 表单以上载新图像

    <?php
      // Form to upload images
      return "<h1>Upload New Images</h1>
      <form method='post' action='index.php?page=upload' enctype='multipart/form-data'>
          <lebel>Find an image to upload</lebel>
          <input type='file' name='image-data' accept='image/jpeg, image/png, image/gif'>
          <input type='submit' name='new-image' value='Upload'>
      </form>";
    ?>
    
    但我得到了以下错误:

  • 注意:第19行D:\xammp\htdocs\ch4 image gallery\views\upload.php中的数组到字符串转换

    打印(数组,真)

    需要帮忙吗?我是PHP新手。
    提前感谢。

    您尚未将文件数据传递给函数

    function upload($data){
     $out = "<pre>";
     $out .=print_r($data, true);
     $out .= "</pre>";
     return $out;
    }
    
    在函数中接受它并打印它

    <?php
      // code for uploading images
      $fileIsUploaded = isset($_POST['new-image']);    // check if file is uploaded via upload-form
      if($fileIsUploaded)
          upload($_FILES);    // calling function 'upload'
      else
          $output = include_once "views/upload-form.php";     // if not, then run to default
      return $output;
    
      //new function to control upload mechanism
      function upload($your_files){
          $out = "<pre>";
          $out .=print_r($your_files, true);
          $out .= "</pre>";
          return $out;
      }
    ?>
    
    函数上传($data){
    $out=“”;
    $out.=print\r($data,true);
    $out.=”;
    退回$out;
    }
    
    它的转换错误,因为您使用的是将数组转换为字符串时使用的

    PS:首先您必须配置PHP以上载文件/s
    file\u uploads=On

    因此,在上面的代码中,您没有将数组传递给
    print\r
    方法。请使用以下方法:

    
    
    (一)

    (二)


    3)

    将全局变量作为参数传递的原因是什么?这个答案不可能是有效的,这种改变没有意义。
    upload($_FILES);
    
    function upload($data){
     $out = "<pre>";
     $out .=print_r($data, true);
     $out .= "</pre>";
     return $out;
    }
    
    <?php
      // code for uploading images
      $fileIsUploaded = isset($_POST['new-image']);    // check if file is uploaded via upload-form
      if($fileIsUploaded)
          upload($_FILES);    // calling function 'upload'
      else
          $output = include_once "views/upload-form.php";     // if not, then run to default
      return $output;
    
      //new function to control upload mechanism
      function upload($your_files){
          $out = "<pre>";
          $out .=print_r($your_files, true);
          $out .= "</pre>";
          return $out;
      }
    ?>