Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Magento区域设置/时区问题_Php_Magento_Zend Framework_Locale_Magento 1.9.1 - Fatal编程技术网

Php Magento区域设置/时区问题

Php Magento区域设置/时区问题,php,magento,zend-framework,locale,magento-1.9.1,Php,Magento,Zend Framework,Locale,Magento 1.9.1,我最近从Magento 1.5升级到1.9,我注意到一些日期/时间的奇怪行为。我不能说在升级之前我对这一点花了太多的精力,所以我将尝试返回并在1.5上测试它,以确认它没有发生。到目前为止,我已经在我们的现场制作网站、我们网站的本地开发副本和一个完全没有定制的干净的Magento CE 1.9.1.0上测试了这一点,每次我都得到相同的结果。我看到的问题是,在某些情况下,“在”时间创建的客户会被错误处理,从而导致月和日值被交换。可靠复制的步骤包括: 在前端下订单,使用选项保存您的帐户以供以后使用 进

我最近从Magento 1.5升级到1.9,我注意到一些日期/时间的奇怪行为。我不能说在升级之前我对这一点花了太多的精力,所以我将尝试返回并在1.5上测试它,以确认它没有发生。到目前为止,我已经在我们的现场制作网站、我们网站的本地开发副本和一个完全没有定制的干净的Magento CE 1.9.1.0上测试了这一点,每次我都得到相同的结果。我看到的问题是,在某些情况下,“在”时间创建的客户会被错误处理,从而导致月和日值被交换。可靠复制的步骤包括:

  • 在前端下订单,使用选项保存您的帐户以供以后使用
  • 进入管理员并查看客户的帐户。请注意“创建时间”。例如,今天的数字是2015年4月2日
  • 从管理员处,为同一客户创建新订单
  • 下单后,返回客户帐户,查看“创建时间”。请注意,它已更改为“2015年2月4日”
  • 重复步骤3-4,注意已将“创建日期”更改回“2015年4月2日”
  • 正如我所说,在我们的网站代码和干净的1.9.1.0安装中,我在两个不同的服务器上都会遇到这种情况,这让我相信这是代码中的一个bug,而不是配置问题,但我不能100%确定。时区、地区等可能会让人有点困惑,所以我的设置可能有问题。如果您有任何想法或能够/无法复制,请分享您的发现/想法


    谢谢

    那么,您可能有以下问题:

    Mage\u Sales\u Model\u Order
    是子类化的,它提供了一个具体的
    getCreatedAt
    方法(与magic方法相反)

    存储在所讨论订单的
    created_at
    列中的数据实际上具有Unix时间戳或其他一些数据?这可能暗示存在非法的架构更改。
    要测试模型是否为子类,请回显
    get\u class($order)
    -如果模型已被重写以进行诊断,请删除重写。是否正确设置了区域设置选项

    System > Configuration > GENERAL > General > Locale Options (3rd Option)
    

    我也遇到了同样的问题。这个问题的答案如下:

    如果文件中没有$this->\u getFormat()函数。请看这里:


    记得刷新缓存。

    你完全没有抓住要点。我不是试图在一些自定义代码中使用日期/时间函数,而是在讨论核心功能。你在管理员中下了一个订单,客户的“创建时间”就被搞乱了。这就是我要追查的问题,我明白了。我的错。好啊您是否为这两个站点偶然使用了自定义主题?如果您在两台服务器上都运行相同的“错误”,那么可以假设是的,您的主题代码中可能存在错误。如果是这种情况,我会联系主题开发者,因为其他人可能也注意到了这一点,并且可能有一个合适的解决方案。如果没有。嗯,我想我没有帮上什么忙。正如我在我的专栏文章中所说,这是在一个库存Magento 1.9.1安装上发生的,没有定制。它只有样本数据和麦迪逊岛商店/主题。如果在我们的主题中有什么东西被破坏了,而在示例中也被破坏了,我会感到惊讶。这似乎与主题无关,不是因为任何第三方扩展,而是发生在两台完全不同的服务器上,其中一台我甚至没有配置,所以我不可能两次犯同样的错误。它闻起来真像个核心臭虫。有没有可能,你真的去尝试我提供的步骤,看看它是否发生在你身上?我会仔细检查,但我很确定我已经检查过了,没有任何东西覆盖getCreatedAt方法。因为它是在一个干净的安装上发生的,无论如何也不太可能是这样。我确实尝试过,但无法复制,我将再看一看它。我重新阅读你的帖子,2015年4月2日将以美国日期格式写成2015年4月2日。。。2015年2月4日,欧洲版。这就是你的出发点!