touch

Sets access and modification time of file

&reftitle.description; `bool` `touch` `string` `filename` ``int``null```mtime`&null; ``int``null```atime`&null;

Attempts to set the access and modification times of the file named in the `filename` parameter to the value given in `mtime`. Note that the access time is always modified, regardless of the number of parameters.

If the file does not exist, it will be created.

&reftitle.parameters;

`filename`

- The name of the file being touched.

`mtime`

- The touch time. If `mtime` is &null;, the current system `time` is used.

`atime`

- If not &null;, the access time of the given filename is set to the value of `atime`. Otherwise, it is set to the value passed to the `mtime` parameter. If both are &null;, the current system time is used.

&reftitle.returnvalues;

&return.success;

&reftitle.changelog;

&Version; | &Description;
8.0.0 | `mtime` and `atime` are now nullable.

&reftitle.examples;

### `touch` example

    <?php
    if (touch($filename)) {
        echo $filename . ' modification time has been changed to present time';
    } else {
        echo 'Sorry, could not change modification time of ' . $filename;
    }
    ?>

### `touch` using the `mtime` parameter

    <?php
    // This is the touch time, we'll set it to one hour in the past.
    $time = time() - 3600;

    // Touch the file
    if (!touch('some_file.txt', $time)) {
        echo 'Whoops, something went wrong...';
    } else {
        echo 'Touched file with success';
    }
    ?>

&reftitle.notes; ¬e.filesystem-time-res;