Php 使用in_数组函数时检查数组中的第一个值/键

Php 使用in_数组函数时检查数组中的第一个值/键,php,Php,我有一组值: $col_names = array( 'Call For?' => 'assigned_to', 'Message' => 'message', 'Name' => 'caller_name', 'Company Name' => 'caller_company',

我有一组值:

$col_names = array(
                   'Call For?' => 'assigned_to', 
                   'Message' => 'message', 
                   'Name' => 'caller_name', 
                   'Company Name' => 'caller_company', 
                   'Telephone' => 'caller_telephone'
                  );
然后,我使用in_数组函数检查值是否在上述数组中:

if(in_array(trim(tdrows($node->childNodes)), $col_names)) {
我想检查数组中的第一个值,例如检查
调用?
而不是
分配给


我如何才能做到这一点?

或者更好的方法是使用
array\u key\u exists()
。这比检索整个密钥列表并在数组中执行
查找要高效得多,正如sgt的回答中所建议的:

if(array_key_exists(trim(tdrows($node->childNodes)), $col_names)) {

您可以使用
array\u flip()
来翻转数组

in_array(trim(tdrows($node->childNodes)), array_flip($col_names))
或者,如果您不需要这些值,请尝试使用
array\u keys()
,它将仅提取这些键

in_array(trim(tdrows($node->childNodes)), array_keys($col_names))
你可以使用


查找密钥是否存在。这比方法好

不是最有效的方法。如果他只需要检查密钥是否存在,最好使用
array\u key\u exists()
yup。。这将是最有效的。错过了这个。:)将给你+1..@Alexlint