我正在使用kohana 3.2
,我想从请求类访问客户端IP,在文档中我可以看到public static string $client_ip
哪些应该包含客户端IP,现在如果我尝试访问它我喜欢这样:
Request::$client_ip;
Run Code Online (Sandbox Code Playgroud)
我明白了:string(3) "::1"
它完全没有意义,我做错了什么,或者可能无法访问它?
Kohana 3.2会议即将到期.我目前的配置是:
return array(
'native' => array(
'name' => 'kohanasession',
'lifetime' => 0,
),
);
Run Code Online (Sandbox Code Playgroud)
使用lifetime => 0
意味着会话将在浏览器关闭时结束.但是,1小时后会话到期.
我也尝试使用不同的生命周期(例如36000 => 10小时),但同样,它失败了.
如果我使用一个很小的会话寿命(例如10秒),那么到期就会完美.据我检查,似乎如果我希望会话的生命周期超过1小时,它将无法正常工作.
最后,我们用于php.ini的相关配置
session.save_handler = memcache
session.save_path="tcp://127.0.0.1:11211?persistent=1&weight=1&timeout=1&retry_interval=15"
session.cache_limiter = nocache
session.gc_probability = 0
Run Code Online (Sandbox Code Playgroud)
我真的迷失在这里.这应该很容易修复,但我无法解决.
$excel2 = PHPExcel_IOFactory::createReader('Excel2007');
$excel2 = $excel2->load('ExampleSpreadsheettest.xlsx');
$excel2->setActiveSheetIndex(0);
$excel2->getActiveSheet()->setCellValue('A4', 'first page')
->setCellValue('A1', '5')
->setCellValue('A2', '6')
->setCellValue('A3', '7');
$objWriter = PHPExcel_IOFactory::createWriter($excel2, 'Excel2007');
$objWriter->save('ExampleNew.xlsx');
Run Code Online (Sandbox Code Playgroud)
上面的代码工作,但我想添加更多的工作表而不是单个工作表.
在为我的某个模型设置验证时,我无法获得"范围"规则的正确语法.每个变化似乎只传递(第一个)最小参数而不传递(第二个)最大值.
/**
* @var array Validation rules
*/
public function rules()
{
return array(
'title' => array(
array('not_empty'),
array('max_length', array(':value', 50)),
),
'time' => array(
array('not_empty'),
array('date'),
),
'date' => array(
array('not_empty'),
array('date'),
),
'limit' => array(
array('digit'),
array('range', array(':value', 1), array(':value', 255)),
),
);
}
Run Code Online (Sandbox Code Playgroud)
我也试着array('range', array(':value', array(1, 255)))
无济于事.
有什么建议?
尝试使用Request类来获取外部资源,但无法弄清楚如何设置更多默认curl选项.
我得到这样的数据:
$data = Request::factory($url)->execute()->body();
Run Code Online (Sandbox Code Playgroud)
我认为添加CURL选项很简单,只需将副本复制system/config/curl.php
到我的应用程序配置文件夹中,然后在那里设置选项(我假设它们将被合并?).
但这些选项似乎根本没用过?试图做一个var_dump
在Kohana_Request_Client_Curl
所有选项应该已经设置之后,但我只能找到这个方法,这是有道理的设置,直接出现的那些,因为我似乎无法找到任何地方这些选项是从配置文件中获取实际...
我在这做错了什么?
在 Kohana 3.2 中,当您覆盖 ORM 的函数“值”时,然后执行以下操作:
public function values(array $values, array $expected = NULL) {
if($values['a_column'] == "") $values['a_column'] = NULL;
return parent::values($values);
}
Run Code Online (Sandbox Code Playgroud)
无论如何,NULL 值将转换为空字符串,这不是我想要的行为。有人知道解决方法吗?我在文档或网络上找不到任何内容...
我在Kohana 3.2中找到了很多关于分页的信息,但大多数分散在论坛评论和博客文章中,没有一个完整的参考资料来源.
(注意:我打算自己回答这个问题)
我无法将一个简单的变量传递给视图,有人能告诉我我做错了什么吗?
我有一个控制器用户:
class Controller_User extends Controller_Template_Login {
public function action_index()
{
$this->template = 'user/info';
parent::before();
$user = Auth::instance()->get_user();
$this->template->content = View::factory('user/info')
->bind('user', $user)
->bind('message', $message)
->bind('errors', $errors);
// if a user is not logged in, redirect to login page
if (!$user)
{
Request::current()->redirect('user/login');
}
}
}
Run Code Online (Sandbox Code Playgroud)
在我的视图(用户/信息)中,我得到的用户未定义.
我错过了什么?
编辑:请注意,这可以通过添加:
$user = Auth::instance()->get_user();
Run Code Online (Sandbox Code Playgroud)
到Controller_Template_Login
$user = Auth::instance()->get_user();
$this->template->user = $user;
Run Code Online (Sandbox Code Playgroud)
我想知道的是为什么这不起作用:
$user = Auth::instance()->get_user();
$this->template->content = View::factory('user/info')
->bind('user', $user)
->bind('message', $message)
->bind('errors', $errors);
Run Code Online (Sandbox Code Playgroud) 我正在研究一个使用COALESCE检索当前项目的本地化字符串的查询
sql在用作原始查询时起作用,但我似乎无法以这种方式使用查询构建器来构建连接
LEFT JOIN text as text_se
ON (main_table.text = text_se.id)
AND (text_se.lang_code = 'SV')
Run Code Online (Sandbox Code Playgroud)
这段代码:
->join(array('text', 'text_se', 'LEFT')
->on('main_table.text', '=', 'text_se.id')
->on('text_se.lang_code', '=', 'SV')
Run Code Online (Sandbox Code Playgroud)
只有结果
LEFT JOIN text as text_se
ON (main_table.text = text_se.id AND text_se.lang_code = 'SV')
Run Code Online (Sandbox Code Playgroud)
哪个不一样...有没有其他人在JOIN声明之后使用AND并且可以帮助我吗?
我基本上想要使用DOMDocument在任何网站上获取所有图像.但由于某些我还不知道的原因,我甚至无法加载我的HTML.
$url="http://<any_url_here>/";
$dom = new DOMDocument();
@$dom->loadHTML($url); //i have also tried removing @
$dom->preserveWhiteSpace = false;
$dom->saveHTML();
$images = $dom->getElementsByTagName('img');
foreach ($images as $image)
{
echo $image->getAttribute('src');
}
Run Code Online (Sandbox Code Playgroud)
发生的事情是没有打印出来.或者我是否对代码做错了什么?
kohana-3.2 ×10
kohana ×7
php ×7
curl ×1
join ×1
kohana-3 ×1
kohana-orm ×1
mysql ×1
pagination ×1
phpexcel ×1
session ×1
worksheet ×1