Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Yii框架中ActiveRecord中的字符串连接?_Php_Frameworks_Concatenation_Yii_Concat - Fatal编程技术网

Php Yii框架中ActiveRecord中的字符串连接?

Php Yii框架中ActiveRecord中的字符串连接?,php,frameworks,concatenation,yii,concat,Php,Frameworks,Concatenation,Yii,Concat,是否可以使用Yii的ActiveRecord方法和模式合并两个表列的值 如果是,怎么做 我目前正在使用这个: return $this->findByAttributes(array('alias' => $alias)); 但在这里,我需要返回具体的字符串/值 请帮助。如果您正在寻找类似的内容: select username||'@'||domain from user_mail_table; 接收连接的值-所以我认为这是不可能的。 这不是ActiveRecord的想法 如果

是否可以使用Yii的ActiveRecord方法和模式合并两个表列的值

如果是,怎么做

我目前正在使用这个:

return $this->findByAttributes(array('alias' => $alias));
但在这里,我需要返回具体的字符串/值


请帮助。

如果您正在寻找类似的内容:

select username||'@'||domain from user_mail_table;
接收连接的值-所以我认为这是不可能的。 这不是ActiveRecord的想法

如果您希望像上面的示例那样计算值,那么应该使用DAO …或者,如果您需要ActiveRecord,则应在应用程序中输入值

$mailaddress=$model->username.'@'.$model->domain;

向模型中添加方法,如下所示:

public function getEmail()
{
  return $this->username.'@'.$this->domain;
}

然后在视图中,您只需使用“email”属性(而不是getEmail)就可以了。

是的,您可以通过在activerecord定义中使用sqlconcat函数来实现这一点
…查找()
->选择(['alias'=>'CONCAT(..))
->全部()

这将生成一个名为alias的列,其中包含concat中使用的列的值

希望这仍然有帮助

谢谢!你让我明白了一些我不太明白的事情!再次感谢!我在想是否有一个参数或用于连接的东西,但无需考虑。:)这也会有所帮助;)