1.mkdir($path,$mode,$recursive,$context)用法
1.第一个参数,路径,绝对路径和相对路径都可以,常常用相对路径,因为方便代码迁移.
2.第二个参数,由四位八进制数组成,第一位通常是0,跟特殊权限有关,可以不用太在意。需要注意的有两点:
第一,0777代表着最高权限,但实际创建的目录可能权限是775,这个文件权限屏蔽值有关,意思就是你的权限被削减了;
比如文件权限屏蔽值为0022,则创建目录最终权限为:0777-0022=0755;
你可以umask命令查看你的权限屏蔽值,了解更多Goole\百度。
第二,这个参数,最好不要以字符串方式填充,如‘0777’,因为这会被当成十进制数,然后新创建的目录就会出现一些奇怪的权限如:dr----x--t
3.第三个参数,就是要不要递归创建,默认是false。举个栗子吧:/照片/年/月
如果你要创建的目录是月,/照片/年 目录已经存在,$recursive=true 或者 $recursive=false都无所谓。
但是如果仅仅是 /照片 目录存在,你要创建的是 /照片/年/月 两级目录,注意,这时候如果不设置$recursive=true的话则会创建失败。
我之前上传图片的时候,保存的是相对路径。比如在前台:
<?php
namespace frontend\FileController;
class FileController extends Controller
{
public function actionIndex()
{
//if(mkdir('upload',0777,true))
if(mkdir('./upload',0777,true)) echo "创建成功";
else echo

本文详细介绍了Yii2框架中mkdir()函数的使用,包括参数含义和注意事项。重点解析了路径、权限模式、递归创建以及在项目中的实际应用问题,特别是如何处理相对路径和权限设置对目录创建的影响。
2292

被折叠的 条评论
为什么被折叠?



