这个PHP脚本有什么问题?
下面的脚本不执行:这个PHP脚本有什么问题?
<?php
$year = date(Y);
$month = date(M);
$dirloc = "/images/".$year."/".$month;
mkdir($dirloc, 0700);
?>
为什么?
谢谢
你忘了引号:
<?php
$year = date("Y");
$month = date("M");
$dirloc = "/images/".$year."/".$month;
mkdir($dirloc, 0700);
?>
这不应该导致错误,因为每个非定义的常量都被视为一个字符串。 – KingCrunch 2011-05-06 23:02:11
今天在这里学到了另一件事:-) +1 upvote – 2011-05-06 23:12:01
@PENDO:只要启用'E_NOTICE';)'PHP注意:使用未定义的常量A - 假设'A''(用于开发更好的'E_ALL | E_STRICT'。 ) – KingCrunch 2011-05-06 23:31:10
使用引号的date()函数:
$year = date("Y");
$month = date("M");
您提供的路径是绝对的,你可能没有在那里创建目录或文件的权利。如果你想创建在当前工作目录(您从脚本中的一个)的目录,尝试
$dirloc = "images/".$year."/".$month;
而且现在看来,要创建多个文件夹。如果父文件夹不存在,mkdir
失败,如果您不允许它递归地创建父项。
mkdir($dirloc, 0700, true);
// = recursive
是的,谢谢你的帮助 – faq 2011-05-06 23:08:03
@ user725097:如果这是最好的答案,请接受它(使用复选标记)。 – webbiedave 2011-05-06 23:09:21
会很有趣,downvoter有什么批评... – KingCrunch 2011-05-06 23:26:15
ps这是我的第一个问题 – faq 2011-05-06 22:59:05
你有权限创建一个新目录吗? – 2011-05-06 22:59:44
你有什么样的错误? – 2011-05-06 23:00:00