Php 函数完成运行前变量值的更改
我有一个图像上传脚本,其中我使用以下设置为上传的图像指定名称Php 函数完成运行前变量值的更改,php,Php,我有一个图像上传脚本,其中我使用以下设置为上传的图像指定名称 $saltdate = date( 'U' ); $saltuser = $_SERVER[REMOTE_ADDR]; $saltname = md5($saltdate.$saltuser); // Recieve, Process, Save uploaded image // Update database with image name 我遇到的问题是,在处理/保存图像后,
$saltdate = date( 'U' );
$saltuser = $_SERVER[REMOTE_ADDR];
$saltname = md5($saltdate.$saltuser);
// Recieve, Process, Save uploaded image
// Update database with image name
我遇到的问题是,在处理/保存图像后,将此文件名添加到数据库时,$saltdate
的值似乎已更改,我将获得数据库中不存在的文件名
编辑
该值已更改,从命名文件到将名称存储在数据库中的时间都在增加
如何确保值在建立后不会更改?使用define将其设置为常数使用define将其设置为常数由于您使用的是
md5()
函数,请确保在检索记录时执行相同的操作。请注意,您在盐中使用的是日期,请确保内容匹配
一个简单的方法是使用
microtime
函数。因为您使用的是md5()
函数,所以请确保在检索回记录时执行相同的操作。请注意,您在盐中使用的是日期,请确保内容匹配
一个简单的方法是使用
微时间
函数。这是调试器非常方便的一种错误。您可以在代码中设置断点,然后逐步执行它,并检查变量的状态等
您可以用作服务器端php模块,例如用作前端/ide。在中有一个关于这种组合的简短介绍,这是调试器非常方便的一种错误。您可以在代码中设置断点,然后逐步执行它,并检查变量的状态等 您可以用作服务器端php模块,例如用作前端/ide。
在“saltdate美元的价值似乎发生了变化”——以什么方式发生了变化?它包含另一个看似有效的值(即一个可能被日期(u′)返回但与您期望的值不同)的数字。日期(‘u’’)的返回值(您可能要考虑只使用时间())由值赋值,因此除非修改它,否则它不能改变。请提供更多相关代码部分。“saltdate的值似乎已经改变”-以什么方式改变?它包含另一个看似有效的值(即一个可能被日期(u′)返回但与您期望的值不同)的数字。日期(‘u’’)的返回值(您可能要考虑只使用时间())由值赋值,因此除非修改它,否则它不能改变。请提供更多相关代码部分。