Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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 如何使用Yii2查询生成器获取数据_Php_Mysql_Yii2_Yii2 Basic App - Fatal编程技术网

Php 如何使用Yii2查询生成器获取数据

Php 如何使用Yii2查询生成器获取数据,php,mysql,yii2,yii2-basic-app,Php,Mysql,Yii2,Yii2 Basic App,我在尝试什么 我有2个表职员和工资明细,我想取职员姓名和相应的工资 $salaries = SalaryDetails::find()->select('salary_details.total_salary AS salary,staff.name AS name') ->leftJoin("staff",'salary_details.staff_id = staff.id');

我在尝试什么 我有2个表职员和工资明细,我想取职员姓名和相应的工资

   $salaries = SalaryDetails::find()->select('salary_details.total_salary AS salary,staff.name AS name')
            ->leftJoin("staff",'salary_details.staff_id = staff.id');
        
            


                if ($fcreated_date != null && $tcreated_date != null) {
                    $salaries->andFilterWhere(['>=','salary_details.salary_given_date', $fcreated_date]);   
                    $salaries->andFilterWhere(['<=', 'salary_details.salary_given_date', $tcreated_date]);
                }
我从
salary\u details
中选择了
salary\u details
作为
salary
staff
作为
name
作为
salary\u details
左侧加入
staff
关于salary\u details.staff\u id=staff.id 这个查询在phpMyadmin中提供了我想要的数据

但是数组给出了ie,print\r($salaries);给予

yii\db\ActiveQuery对象([sql]=>[on]=>[joinWith]=>[select]=>数组([0]=>salary\u details.total\u salary AS salary[1]=>staff.name AS name)[selectOption]=>[distinct]=>[from]=>[groupBy]=>[join]=>数组([0]=>数组([0]=>LEFT-join[1]=>staff[2]=>salary\u details.staff\u id=>staff.id))[having]=>[union]=>[params]=>Array()[\u事件:yii\base\Component:private]=>Array()[\u行为:yii\base\Component:private]=>Array()[where]=>[limit]=>[offset]=>[orderBy]=>[indexBy]=>[modelsclass]=>common\models\SalaryDetails[with]=>[asArray]=>[multiple]=>[primaryModel]=>[primaryModel]=>[link]=>[via]=>[inverseOf]=>]


谢谢,

正如您在
打印中所看到的,
$salaries
是一个
ActiveQuery
实例。对其调用方法asArray()->all()
,以获取记录

$query = SalaryDetails::find()
    ->select('salary_details.total_salary AS salary,staff.name AS name')
    ->leftJoin("staff",'salary_details.staff_id = staff.id');
if ($fcreated_date != null && $tcreated_date != null) {
    $query->andFilterWhere(['>=','salary_details.salary_given_date', $fcreated_date]);   
    $query->andFilterWhere(['<=', 'salary_details.salary_given_date', $tcreated_date]);
}
$salaries = $query->asArray()->all();
$query=SalaryDetails::find()
->选择('salary\u details.total\u salary AS salary,staff.name AS name')
->leftJoin(“staff”,“salary_details.staff_id=staff.id”);
如果($fcreated_date!=null&&$tcreated_date!=null){
$query->andFilterWhere(['>=','salary\u details.salary\u given\u date',$fcreated\u date]);
$query->andFilterWhere(['
$query = SalaryDetails::find()
    ->select('salary_details.total_salary AS salary,staff.name AS name')
    ->leftJoin("staff",'salary_details.staff_id = staff.id');
if ($fcreated_date != null && $tcreated_date != null) {
    $query->andFilterWhere(['>=','salary_details.salary_given_date', $fcreated_date]);   
    $query->andFilterWhere(['<=', 'salary_details.salary_given_date', $tcreated_date]);
}
$salaries = $query->asArray()->all();