标签: cakephp

Cakephp中的getLastInsertId()相当于什么?

如果我getLastInsertId()在a之后立即做save(),它可以工作,但否则它不会.这在我的控制器中得到证明:

function designpage() {
    //to create a form Untitled
    $this->Form->saveField('name','Untitled Form');
    echo $this->Form->getLastInsertId(); //here it works
}

function insertformname() {
    echo $this->Form->getLastInsertId(); //this doesnt echo at all
}
Run Code Online (Sandbox Code Playgroud)

请建议一种获得我想要的功能的方法.

cakephp

50
推荐指数
10
解决办法
12万
查看次数

在PHPDoc中记录数组选项的最佳方法?

我正在努力编写可读且易于理解的文档,该文档描述了传递给函数的Array选项的多树结构.

这是一个示例数组结构.

$arr = [
   'fields' => [
       'title' => [
           'name'     => 'Document.title',
           'format'   => 'string',
           'readonly' => true
       ]
   ]
];
Run Code Online (Sandbox Code Playgroud)

上述数组有许多可能的选项,但这用作理解该结构的函数的参数.

function doSomething(array $arr) { ... }
Run Code Online (Sandbox Code Playgroud)

我想记录如何在PHPDoc中构建数组,但我不确定正确的方法是什么.

这就是我现在拥有的.

/**
 * Holds configuration settings for each field in a model.
 * Defining the field options
 *
 * array['fields'] array Defines the feilds to be shown by scaffolding.
 * array['fields'][fieldName] array Defines the options for a field, or just enables the field if array is not applied.
 * …
Run Code Online (Sandbox Code Playgroud)

php cakephp phpdoc

49
推荐指数
6
解决办法
5万
查看次数

48
推荐指数
4
解决办法
12万
查看次数

PHP致命错误:找不到类'PDO'

PHP Fatal error:  Class 'PDO' not found in /home/bd/public_html/app/webroot/Cake/Model/Datasource/Database/Mysql.php on line 177
Run Code Online (Sandbox Code Playgroud)

PHP信息:

PDO

PDO support => enabled
PDO drivers => sqlite, sqlite2, mysql

pdo_mysql

PDO Driver for MySQL => enabled
Client API version => 5.5.24

Directive => Local Value => Master Value
pdo_mysql.default_socket => /var/lib/mysql/mysql.sock => /var/lib/mysql/mysql.sock

pdo_sqlite

PDO Driver for SQLite 3.x => enabled
SQLite Library => 3.7.7.1
Run Code Online (Sandbox Code Playgroud)

PHP INI:

extension=pdo.so
extension=pdo_sqlite.so
extension=sqlite.so
extension=pdo_mysql.so
Run Code Online (Sandbox Code Playgroud)

码:

/**
 * Check whether the MySQL extension is installed/loaded
 *
 * @return boolean …
Run Code Online (Sandbox Code Playgroud)

php mysql cakephp web-applications

47
推荐指数
6
解决办法
14万
查看次数

CakePHP:查找字段不为空的位置

我需要选择User.site_url不为null的所有行.在常规MySQL查询中执行此操作非常简单,但是如何在CakePHP中完成此操作?

手册提到了以下内容:

array ("not" => array (
        "Post.title" => null
    )
)
Run Code Online (Sandbox Code Playgroud)

我尝试了以下但它仍然返回一切

$this->User->find('all', array('conditions' => array('not' => array('User.site_url'))));
Run Code Online (Sandbox Code Playgroud)

php cakephp

46
推荐指数
4
解决办法
7万
查看次数

如何对您的API进行单元测试?

我正处于需要为使用CakePHP 1.3编写的REST API编写单元测试的地步.API支持用于查询和操作数据的GET,POST和PUT请求.

有没有确定的方法来测试模拟HTTP请求的API的正确输入/输出,使用fixture?我不想对live(dev)数据库运行实际的POST/PUT请求.我怎样才能最好地模拟系统以使用临时模型,然后按原样测试堆栈的其余部分?


使用控制器测试可以轻松测试GET请求.但是,对于数据操作,API非常广泛地使用HTTP头,并且还解析原始XML和JSON POST/PUT数据.控制器单元测试方法仅通过$this->data在控制器中设置来模拟POST数据,这不允许我正确地测试API.

api unit-testing cakephp

46
推荐指数
2
解决办法
2万
查看次数

CakePHP中使用的.ctp文件是什么?

我开始使用CakePHP,我正在阅读手册.在页面的大约一半处,有这样的评论:

// Render the element in /views/elements/ajaxreturn.ctp
Run Code Online (Sandbox Code Playgroud)

这是一个非常简单的问题:.ctp扩展名是指什么?什么是一般用例?

谢谢.

cakephp ctp-file

44
推荐指数
3
解决办法
5万
查看次数

CakePHP使用JOIN查找方法

嗨,

我需要使用CakePHP find方法执行以下查询:

SELECT *
FROM `messages`
INNER JOIN users ON messages.from = users.id
WHERE messages.to = 4
ORDER BY messages.datetime DESC
Run Code Online (Sandbox Code Playgroud)

基本上我有:

  • messages表与Message模型
  • users表与User模型

并希望在一个查询中从两个表中检索信息.该users.id字段与messages.from字段相同,因此这是连接所在的字段.

我在我MessagesController这样做,所以它需要是这样的:

$this->Message->find();
Run Code Online (Sandbox Code Playgroud)

谢谢

php sql cakephp join

44
推荐指数
1
解决办法
10万
查看次数

CakePHP - 获取最后一次查询运行

我想得到CakePHP运行的最后一个查询.我无法在core.php中打开调试,我无法在本地运行代码.我需要一种方法来获取最后的SQL查询并将其记录到错误日志而不影响实时站点.此查询失败但正在运行.

这样的事情会很棒:

$this->log($this->ModelName->lastQuery);
Run Code Online (Sandbox Code Playgroud)

提前致谢.

mysql logging cakephp

43
推荐指数
4
解决办法
8万
查看次数

在PHPStorm中将CTP文件显示为PHP文件

我有一个在CakePHP上运行的项目.我的所有视图都存储为ctp文件.如何渲染我的ctp文件,以便在查看存储为PHP文件的文件时,我具有相同的可视格式?在Notepad ++中,我可以通过选择"语言"工具栏选项来完成此操作.PHPStorm中是否有类似的功能?

cakephp phpstorm

42
推荐指数
2
解决办法
2万
查看次数

标签 统计

cakephp ×10

php ×5

mysql ×2

api ×1

centos ×1

ctp-file ×1

gd ×1

join ×1

linux ×1

logging ×1

phpdoc ×1

phpstorm ×1

sql ×1

unit-testing ×1

web-applications ×1