file_put_contents OS X El Capitan

file_put_contents on OS X El Capitan

我是 Mac OS X 的新手。目前,我想在我兄弟 OS X 上放置一个本地主机并为他托管 php 文件。我做了一个php,可以拍照直接存到文件夹。该代码在我的 windows 7 PC 上运行,我可以正常使用它。但是,它在 OS X 中不起作用,因为它总是无法将照片存储在本地文件夹中。 我保存图片的代码是:

<?php
require('includes/connect.php'); // Connect to database

$rmid = $_GET['id']; // Get product ID

// Fetch photo only if product id is not empty
if (!empty($rmid)) {
    $rawData = $_POST['imgBase64'];
    echo "<img src='".$rawData."' />"; // Show photo

    list($type, $rawData) = explode(';', $rawData);
    list(, $rawData)      = explode(',', $rawData);
    $unencoded = base64_decode($rawData);

    $filename = date('dmYHi').'_'.rand(1111,9999).'_'.$rmid.'.jpg'; // Set a filename
    file_put_contents("/foto/$filename", base64_decode($rawData)); // Save photo to folder

    // Update database with the new filename
    mysqli_query($conn,"INSERT INTO foto(rmid,namafoto) VALUES ('$rmid','".$filename."')"); 
}  else {
    die('Rekam Medis ID is missing!');
}

我已经在 php 文件夹中创建了 'foto' 文件夹。而且我已授予该文件夹的全部读写权限。我不确定为什么照片没有存储在 foto 文件夹中。但是查询正在将文件名存储到数据库中。

补充信息:我正在使用 XAMPP 和 PHP 7.0

感谢您的帮助!

请尝试像这样更改目标文件夹的权限:

sudo chmod -R 777 *target_folder*

这应该可以解决问题。