PHP | copy 函數

怎樣複製一個文件

最近更新時間 2020-12-30 16:41:09

copy 拷貝源文件到目標文件。

copy() 函數是一個內置函數,用於創建指定文件的副本。它將源文件複製到目標文件,如果目標文件已存在,將會被覆蓋。函數成功返回 true,失敗則返回 false。

函數定義

copy(string $source , string $dest [, resource $context ]):bool
// 源文件位於:ext/standard/file.c
# 函數定義

PHP_FUNCTION(copy)
{
  ...
  if (php_stream_locate_url_wrapper(source, NULL, 0) == &php_plain_files_wrapper && php_check_open_basedir(source)) {
    RETURN_FALSE;
  }

  context = php_stream_context_from_zval(zcontext, 0);

  if (php_copy_file_ctx(source, target, 0, context) == SUCCESS) {
    RETURN_TRUE;
  } else {
    RETURN_FALSE;
  }
}

參數

  • checksource - 源文件路徑。如果 source 是一個 URL,則如果封裝協議不支持覆蓋已有的文件時拷貝操作會失敗。
  • checkdest - 目標路徑。

返回值

  • checkbool - 操作成功時返回 true,否則返回 false。

示例1: - 使用 copy() 函數拷貝源文件到目標文件。

<?php
/**
 * PHP 使用 copy() 函數拷貝源文件到目標文件。
 *
 * @since Version 1.0.0
 * @filesource
 */

// 源文件
$source = "source.txt";
// 目標文件
$dest = "dest.txt";

// 複製文件
if(copy($source, $dest)) {
  echo 'File copied!!!';
}
File copied!!!

注意:如果當前用户沒有權限,操作會失敗。

rss_feed