CakePHP约定(2.3.1。)在不同服务器上的奇怪行为

时间:2013-03-08 23:43:07

标签: cakephp cakephp-2.3

我在Windows 8上创建了一个关于XAMPP数据包的应用程序。它很棒。

现在,当我将它上传到服务器(Linux)上时,存在一些问题。

让我们说“ClientStatus”。

Controller name: "ClientStatuses".
File name: "ClientStatusesController.php".
Plural: "ClientStatuses".
Singular: "ClientStatus".

但是在Linux服务器上,它说我必须有“ ClientstatusesController.php ”。这是为什么?我需要在配置中进行哪些更改,以便XAMPP和Linux服务器上的约定相同?它是.htaccess中的东西吗?

任何信息都会很棒。谢谢。 :)

CakePHP 2.3.1

2 个答案:

答案 0 :(得分:0)

对于控制器,约定总是“复数”,因此只有一个正确的名称:

ClientstatusesController

请参阅http://book.cakephp.org/2.0/en/getting-started/cakephp-conventions.html

或尝试http://inflector.cakephp.org/clientstatus

答案 1 :(得分:0)

“* nix”似乎与文件夹名称区分大小写。它必须是ClientstatusesController.php。

好吧,在这里,我想告诉你,当我在服务器上传项目时,我已经解决了一件事。

为了将JavaScript数组转换为JSON,我使用了JSON.stringify(),而服务器的json_decode()在转换回时总是返回“null”。

我认为这是因为3个BOM字符。这解决了这个问题。

$table = json_decode(stripslashes($_REQUEST['table']), true);