Dizi ile ilgili sorun

3 Cevap php
$modules    			= array(
'home'  				=> 'home',
'login' 				=> 'login',
'forum' 				=> 'forum',
'topic' 				=> 'topic',
'post'  				=> 'post',
'profile'   			=> 'profile',
'moderate'  			=> 'moderate',
'search'    			=> 'search',
'ucp'   				=> 'usercp',
'ucc'   				=> 'usercp',
'pm'    				=> 'pm',
'members'   			=> 'members',
'boardrules'    		=> 'boardrules',
'groups'    			=> 'groupcp',
'help'  				=> 'help',
'misc'  				=> 'misc',
'tags'  				=> 'tags',
'attach'    			=> 'attach'
);

if (in_array($modules, $_GET['module'])) {
include $_GET['module'].'.php';
}

verir:

Warning: in_array() [function.in-array]: Wrong datatype for second argument in d:\public_html\forte.php on line 24

Ne oldu?

3 Cevap

PHP.NET Gönderen:

bool in_array ( mixed $needle , array $haystack [, bool $strict ] )

$modules ve bunun için aradığınız yerdir: emin iğne olduğunuzdan emin olun $_GET['module']. Eğer bu iki kadar karışık gibi hissediyorum. Gerçekten böyle yazılmalıdır:

in_array($_GET['module'], $modules);

Umarım ki olur!