在codeigniter中,我想在每次調用模型的方法時初始化變量。
我嘗試過使用構造函數,但構造函數僅在您的模型被加載一次之後調用,並且之後對加載的類/模型的方法的任何調用都不會再次調用其構造函數。codeigniter初始化每個模型方法調用的變量
2
A
回答
0
我建議創建模型並實例化標準PHP之類的對象。雖然不是標準的CodeIgniter實踐,但有時使用基本的PHP是最好的方法。
例如,我放在models/Foo.php
我Foo
類:
class Foo {
protected $bar;
public function baz() {
echo $this->bar;
}
public function __constuct($bar) {
$this->bar = $bar;
}
}
然後,我require_once
文件,每當我需要啓動一個新的實例。這使我可以靈活地使用不同的參數創建新的對象。
如果您需要訪問全球CodeIgniter
對象,你總是可以創建一個$ci
屬性,並指定它的get_instance()
值在構造函數的開始。
+0
我想要一些與ci相關的東西而不是核心php,無論如何thanx的努力 –
0
這使我腦海的第一個念頭是:
要發送這些變量作爲參數傳遞給你的模型,只要你調用模型例子:
控制器:
$this->load->model('Product_mdl');
$this->product_mdl->init(10,20,30);
型號(product_mdl.php)
<?php
class Product_mdl extends CI_Model
{
private $var1 = $var2 = $var3 = NULL;
public function init($value1, $value2, $value3)
{
$this->$var1 = value1;
$this->$var2 = value2;
$this->$var3 = value3;
}
// now you can call $this->varx in the remaining model code
...
}
相關問題
- 1. 初始化方法調用
- 2. 初始化變量的正確方法
- 3. post方法調用一個java類初始化每個請求
- 4. 當使用prompt()方法在JavaScript中初始化變量時,初始化變量的類型是什麼?
- 5. 正在初始化一個未初始化變量的變量是否合法?
- 6. xsl變量初始化,方法不會被調用
- 7. 無法初始化變量
- 8. 用不同的方法初始化變量/對象與全局初始化
- 9. 通過變量調用Codeigniter模型方法
- 10. 切片類型的初始化方法無法初始化
- 11. 初始化一個變量
- 12. 覆蓋方法初始化不能識別變量值變化時調用
- 13. Apache CXF初始化的調用方法
- 14. Guice在初始化對象後調用初始化方法
- 15. 變量初始化?
- 16. 初始化變量
- 17. 初始化變量
- 18. 變量初始化
- 19. 變量初始化
- 20. 初始化變量
- 21. 初始化變量
- 22. 初始化變量
- 23. 未初始化的常量模型:: AlgoliaSearch
- 24. Flash AS3編碼變量對每次調用的初始化方式不同
- 25. 無法使用beforeValidate初始化變量
- 26. 找出變量初始化的地方
- 27. 這個方法爲什麼不初始化顯示的變量?
- 28. 使用變量中的類型初始化變量
- 29. Ruby:調用初始化方法
- 30. 從初始化調用實例方法
請張貼您的代碼和您試過的東西 – Vedda