函数array_key_exists在包含subb_arrays的数组中

时间:2012-11-19 10:41:48

标签: php function return array-key-exists

我遇到了一个函数问题。

实际上我想要包含我的所有页面,但问题是并非所有页面都被命名为param $_GET['page'],例如,如果我调用index.php?p=accueil它将重定向到php/home.php }

另一个例子,如果我致电index.php?p=message,它会透明地重定向到message.php

对于所有异常,我都生成了一个类似的数组:

<?php    
$paramListepages = array(       
     'corbeille' => array(
         'libelle'     => 'corbeille',
         'page'        => 'php/trash.php'
     ),   
     'nouveaumessage' => array(
         'libelle'     => 'nouveaumessage',
         'page'        => 'php/envoyer.php'
     )  
);
?>

这个数组包含许多sub_arrays正如你可以看到这个数据的第2个。

对于调用页面,我已经完成了这样的功能:

function getPage($var) {
    if (!isset($var)){
        //Aucune page spécifiée => default page
        inlude('php/accueil.php');
    }
    elseif (array_key_exists($var,$paramListepages)){
        // page trouvée => on l'inclut!
        include ('php/accueil.php');
    }
    else{
        // page espectant la structure, non trouvée dans l'array => on l'inclut directement
        include('php/'.$var.'.php');    
    }
}

实际上它似乎认出了if条件和其他条件。

但是当我在数组中要求一个页面时,有一个空白页面似乎无法读取预期的正确值。

我有空白页,没有错误或邮件错误。

在我的Ubuntu中,我激活了error_reporting(E_ALL);

非常感谢任何形式的帮助

1 个答案:

答案 0 :(得分:0)

基本上这个?

elseif (array_key_exists($var,$paramListepages)){
    include ($paramListepages[$var]['page']);
}