首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Symlink错误: PHP警告: symlink():文件已存在

Symlink错误: PHP警告: symlink():文件已存在
EN

Stack Overflow用户
提问于 2021-05-28 22:06:43
回答 2查看 274关注 0票数 0

日安,

有人可以帮助/建议,因为我正在尝试创建public_html目录中的图像文件夹和应用程序目录中的图像文件夹之间的符号链接。运行symlink文件时,消息显示:"Symlink process successfully“,但我收到一个错误日志,指出:

PHP Warning: symlink(): File exists in /home/property/public_html/symlink.php on line 5

我用来尝试创建符号链接的代码是:

代码语言:javascript
复制
<?php

$targetFolder = '/home/property/app/images';
$linkFolder = '/home/property/public_html/images';
symlink($targetFolder,$linkFolder);
echo 'Symlink process successfully completed';

?>
EN

回答 2

Stack Overflow用户

发布于 2021-05-29 07:37:41

symlink()文档指出,这是发生错误时的预期行为:https://www.php.net/manual/en/function.symlink.php#refsect1-function.symlink-errors

即使错误抑制是一把双刃剑,如果您以类似的方式检查symlink()的输出,您也可以在这里使用它:

代码语言:javascript
复制
if (@symlink($targetFolder, $linkFolder)) { // The @ suppresses the error
    echo 'Symlink process successfully completed';
} else {
    echo 'Symlink process failed';
    return 1; // You should probably exit with a non-zero status code if that is your whole script.
}

另一个选择

代码语言:javascript
复制
// die() will run only if symlink() returns false
@symlink($targetFolder, $linkFolder) || die('Symlink process failed');

// If we reach this point, die() didn't run thus symlink was successful
echo 'Symlink process successfully completed';
票数 0
EN

Stack Overflow用户

发布于 2021-05-31 17:55:14

该错误似乎是在已经包含“public_html”文件夹的图像文件夹中引起的。在删除public_html目录中的图像文件夹并执行符号链接脚本后,符号链接成功创建。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67740392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档