Php 分割关联数组

Php 分割关联数组,php,yii,Php,Yii,我正在尝试拆分关联数组。但实际情况是,它只需删除它的键并按升序排列。我希望获得包含键和值的关联数组的前5个元素 $AllQuestions = Question::model()->findAll($criteria); foreach ($AllQuestions as $aq) { $question = array(); $question[$aq->id] = $aq->question;

我正在尝试拆分关联数组。但实际情况是,它只需删除它的键并按升序排列。我希望获得包含键和值的关联数组的前5个元素

$AllQuestions = Question::model()->findAll($criteria);
        foreach ($AllQuestions as $aq) {
            $question = array();
            $question[$aq->id] = $aq->question;
            if ($aq->type == "Realistic") {
                $testViewModel->RealisticQuestions[$aq->id] = $aq->question;
            } else if ($aq->type == "Investigative") {
                $testViewModel->InvestigativeQuestions[$aq->id] = $aq->question;
            } else if ($aq->type == "Conventional") {
                $testViewModel->ConventionalQuestions[$aq->id] = $aq->question;
            } else if ($aq->type == "Enterprising") {
                $testViewModel->EnterpriseQuestions[$aq->id] = $aq->question;
            } else if ($aq->type == "Social") {
                $testViewModel->SocialQuestions[$aq->id] = $aq->question;
            } else if ($aq->type == "Artistic") {
                $testViewModel->ArtisticQuestions[$aq->id] = $aq->question;
            }
        }
        $testViewModel->InvestigativeQuestions = array_slice($testViewModel->InvestigativeQuestions, 0, $maxQuestions);
        $testViewModel->ArtisticQuestions = array_slice($testViewModel->ArtisticQuestions, 0, $maxQuestions);
        $testViewModel->ConventionalQuestions = array_slice($testViewModel->ConventionalQuestions, 0, $maxQuestions);
        $testViewModel->EnterpriseQuestions = array_slice($testViewModel->EnterpriseQuestions, 0, $maxQuestions);
        $testViewModel->SocialQuestions = array_slice($testViewModel->SocialQuestions, 0, $maxQuestions);
        $testViewModel->RealisticQuestions = array_slice($testViewModel->RealisticQuestions, 0, $maxQuestions);
可以使用数组\ U切片


你试过什么?一点代码将有助于人们更好地理解你的问题。你能给我们展示一些你迄今为止尝试过的代码吗?@VivekPradhan这就是我尝试过的far@FH-从某种意义上说,这就是我迄今为止所尝试的
$new_array = array_slice($old_array, 0, 5, true);
Use it:

$testViewModel->InvestigativeQuestions = array_slice($testViewModel->InvestigativeQuestions, 0, $maxQuestions, true);
$testViewModel->ArtisticQuestions = array_slice($testViewModel->ArtisticQuestions, 0, $maxQuestions, true);
$testViewModel->ConventionalQuestions = array_slice($testViewModel->ConventionalQuestions, 0, $maxQuestions, true);
$testViewModel->EnterpriseQuestions = array_slice($testViewModel->EnterpriseQuestions, 0, $maxQuestions, true);
$testViewModel->SocialQuestions = array_slice($testViewModel->SocialQuestions, 0, $maxQuestions, true);
$testViewModel->RealisticQuestions = array_slice($testViewModel->RealisticQuestions, 0, $maxQuestions, true);