草庐IT

php - Kohana v3,自动转义非法字符?

快速提问,Kohana(版本3)是否自动转义传递到ORM::factory.....(以及与数据库有关的任何其他地方)的数据?例如:$thread=ORM::factory('thread',$this->request->param('id'));第二个参数中传递的数据在进入SQL查询之前是否会自动转义,还是我必须手动转义?可能是一个愚蠢的问题,安全总比后悔好,但是是的......我通常会手动转义数据,但我想知道Kohana是否为我这样做?谢谢 最佳答案 它是自动转义的。唯一需要担心转义的情况是,如果您正在编写自己的SQL并直接插

php - Kohana 3 中的 i18n 和错误消息

我正在使用Kohana3开发一个管理应用程序,显然我要处理很多表单。应用程序需要多语言,我对如何管理我的消息文件,尤其是如何访问它们感到非常困惑。i18n是否支持语言文件夹内的不同文件夹和文件?例如:国际化zh表单fr表单或者语言文件中是否支持数组?i18n/fr.phparray('error_type'=>'ErrormessageinFrench.','error_type_2'=>'Othererrormessage.',))如果可以的话,您将如何在翻译消息时访问这些字段/文件?我不明白的另一件事是我如何以某种方式将我的翻译链接到messages文件夹中的错误消息。这让我很困惑

php - Kohana 3 ORM : advanced queries, 效率

所以我们都知道Kohana3的文档非常糟糕。那么我如何构造以下查询,其中我有一个“Player”和“Dragon”模型?SELECT*FROM`dragons`JOIN`players`ON(`dragons`.`player_id`=`players`.`player_id`)WHERE`uid`IN(1,2,3)ORDERBY`dragons`.`id`ASC我可以使用ORM::factory('dragon')->join("players")->on("dragons.player_id","=","players.player_id")进入连接部分,但我不能执行in子句。Ko

php - 模型中的 Kohana ORM 自定义方法

我有这两个模型:classModel_userextendsORM{protected$_has_many=array('credits',array('model'=>'credit','foreign_key'=>'user'));}classModel_creditextendsORM{protected$_belongs_to=array('user',array('model'=>'user','foreign_key'=>'user'));protected$_tb='credits';protected$_pk='id';//methodtobeimplementedpu

php - 使用 ORM kohana 限制结果

我写过代码ORM::factory('cds')->find_all(1,2);它正在返回所有行。但根据文档,它应该返回2行。代码有什么问题?http://docs.kohanaphp.com/libraries/orm 最佳答案 对于Kohanav3,执行限制的有效方法是:ORM::factory('cds')->limit(2)->find_all(); 关于php-使用ORMkohana限制结果,我们在StackOverflow上找到一个类似的问题: h

php - ORM 的 Kohana 数据库配置设置

如何选择我的ORM应使用的数据库配置?该文档仅提及如何设置配置并在使用纯数据库方法时选择它。使用ORM时不是。这是我当前的配置:控制者where('first_name','=','Peter')->find_all();$memCount=$members->count_all();$this->response->body('Count:'.$memCount);}}//EndWelcome型号配置(位于application/config/database.phparray('type'=>'mysql','connection'=>array('hostname'=>'loca

php - 为什么 Kohana 使用 before() 和 after()

我刚刚开始玩Kohana,它来自CodeIgniter和纯PHP。我想知道为什么Kohana使用before()和after()函数而不是普通的构造函数和析构函数? 最佳答案 两者之间存在细微差别:constructor和destructor在创建和销毁实例时被调用。before和after方法在Controller的Action执行之前和之后被调用。除此之外,你不能保证constructor和destructor在Action执行之前和之后被调用,但是你可以保证对于before和after方法。

php - 如何使用 kohana 3.2 使用 PHPExcel 创建新工作表

$excel2=PHPExcel_IOFactory::createReader('Excel2007');$excel2=$excel2->load('ExampleSpreadsheettest.xlsx');$excel2->setActiveSheetIndex(0);$excel2->getActiveSheet()->setCellValue('A4','firstpage')->setCellValue('A1','5')->setCellValue('A2','6')->setCellValue('A3','7');$objWriter=PHPExcel_IOFacto

php - 为生产覆盖 Kohana_Exception::_handler() - 3.3

我正在使用Kohana3.3并且我阅读了这个forumpost.它说,为了防止向最终用户显示堆栈跟踪,我需要覆盖Kohana_Exception::_handler()以对向上渗透的错误做一些不同的事情。这是否意味着覆盖Kohana_Exception并添加以下函数?publicstaticfunction_handler(Exception$e){try{//LogtheexceptionKohana_Exception::log($e);//Generatetheresponse//insteadofbelowline://$response=Kohana_Exception::r

php - $_GET 数组为空

我的Kohana3应用程序使用了相当多的$_GET参数。但是,当我部署应用程序时,我得到一个空白页面,其中只有文本“未指定输入文件”。通过更改我的.htaccess文件,我很快找到了解决这个看似常见问题的方法:RewriteRule.*index.php/$0[PT,L]到RewriteRule.*index.php?$0[PT,L]但是现在我的$_GET数组丢失了所有传递的参数。任何不需要$_GET的页面都可以正常工作。我不太擅长.htaccess文件,但据我所知,添加?已将$_GET数组替换为uri。我也试过RewriteRule.*index.php/?$0[PT,L]和Rewr