我正在使用 CakePhp 2.2.3 并且我正在制作一个组件。
成分:
App::uses('Component', 'Controller');
class ExampleComponent extends Component {
public $settings = array();
protected $_defaults = array(
'a1' => null,
'a2' => 2
);
public function __construct(ComponentCollection $collection, $settings = array()) {
$settings = array_merge($this->_defaults, $settings);
$this->settings = $settings;
}
public function sum() {
$sum = $this->settings['a1'] + $this->settings['a2'];
return $sum;
}
}
Run Code Online (Sandbox Code Playgroud)
控制器:
class ExampleController extends AppController {
public $components = array('Example');
public function index () {
$this->set('sum', $this->Example->sum(array('a1' => 2, 'a2' => 3)));
}
} …Run Code Online (Sandbox Code Playgroud) 我想删除数据库中的记录后删除文件.因为我使用相关模型中的一些数据来构建图像路径,所以我需要在beforeDelete()中获取这些数据.
function beforeDelete() {
$info = $this->find('first', array(
'conditions' => array('Media.id' => $this->id),
));
}
function afterDelete() {
unlink(WWW_ROOT . 'img/photos/' . $info['News']['related_id'] . "/" . $info['Media']['file']);
}
Run Code Online (Sandbox Code Playgroud)
如何正确访问$info数组afterDelete()?
我有一个简单的内容块:
<div>
<img src="/img/sample.png" alt="Sample image">
<span class="colored-text">Company name</span>
<em>Address</em>
</div>
Run Code Online (Sandbox Code Playgroud)
我希望"公司名称"和"地址"分开.
现在我有几种选择:
制作额外的<div>s,<br/>在<span>和<em>标签之间添加标签,也许还有其他一些解决方案.添加此类功能的正确方法是什么?
我需要以人类可读的格式显示当前的记录状态.在我的数据库中,我有一个这个字段的int,所以记录可能有状态1,2,3,4等
我写了一些代码来向用户显示当前状态:
<?php
// code to retrieve current status from DB
// ...
if ($status == '1') {
echo "Current status: Active";
}
if ($status == '2') {
echo "Current status: Pending";
}
if ($status == '3') {
echo "Current status: Inactive";
}
// etc..
?>
Run Code Online (Sandbox Code Playgroud)
这段代码看起来非常难看,但我无法弄清楚如何重构它以使其更有效并且没有无限的一系列条件.