Copy() target is blank in PHP 8.3.0
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- C
- Sterne
- 40.4k
- Forks
- 8.2k
- Ø Merge
- 2 T. 13 Std.
- Gemergte PRs (30 T.)
- 96
Beschreibung
Description
The following code:
<?php
$source = '/media/sf_source/text.txt';
$destination = '/media/sf_destination/text.txt';
copy($source, $destination);
Resulted in this output:
/media/sf_destination/text.txt is an empty 0 bytes file.
How to replicate
php is running in the guest and tries to copy a file from a shared folder to an other shared folder.
Permissions are ok on the source and destination.
I tried to activate/disable the option "Host Input/Output Caching" of VirtualBox. There is no visible impact.
Environnement
Host: Windows 10 running VirtualBox 7.0.12
Guest: Ubuntu 20.04.
Workaround
<?php
file_put_contents('/media/sf_destination/text.txt', file_get_contents('/media/sf_source/text.txt'));
Related?
https://github.com/php/php-src/issues/9656
https://github.com/php/php-src/issues/9653
PHP Version
PHP 8.3.0
Operating System
Ubuntu 20.04 + Windows 10
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, den copy()-Fehler in PHP 8.3.0 mit dem angegebenen Setup aus Windows 10, VirtualBox 7.0.12, Ubuntu 20.04 und einem freigegebenen Ordner zu reproduzieren. Vergleiche das Verhalten mit der file_get_contents()/file_put_contents()-Umgehung und prüfe die verwandten Issues 9656 und 9653; als erledigt gilt die Aufgabe, wenn copy() in dieser Umgebung den Inhalt der Quelle zuverlässig beibehält.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- php
- Bereich
- operating-systems
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100