PHP在数组中查找第n个元素

时间:2014-06-26 17:46:06

标签: php arrays function

获取数组中第n项的Php函数。

这是我经常做的事情。

$hr = array(' ','Mr.','Ms.','Mrs.','Dr.','Prof.','Rev.','Sir.',' ',' ');
$na = trim($hr[$rs['tbHR']] .' '. $rs['tbFN'] ." ".  $rs['tbLN']);

(这只是一些示例代码,不要从字面上理解)$ rs =数据记录集在哪里 $ hr是表示人员荣誉称号的整数。

我宁愿做的是动态分配数组项,类似于第n个函数。但是,我没有在PHP中找到它。 (我已经找过了)也许有更好的方法?有什么提示吗?

这是我想做的事。

$na = trim(nth($rs['tbHR'],
array(' ','Mr.','Ms.','Mrs.','Dr.','Prof.','Rev.','Sir.','?','?')) ." ".
$rs['tbFN'] .' '. $rs['tbLN']);

因此无需创建变量$ hr。我也不想创建功能。

[编辑] 对不起,伙计们,也许我的英语不太好。

假设你有宠物阵列('',' dog',' cat',' fish','鸟'蛇#39;); 和莎莉有一只猫。莎莉['宠物'] =' cat';

但我们并不想存储“" cat"在我们的数据库中相反,我们想要使用数字。像莎莉['宠物'] = 2;

在PHP中,你可以:

$sally['pet'] = 2;
$pets = array(' ', 'dog', 'cat', 'fish', 'bird', 'snakes');
echo "Sally's pet is a ". $pets[$sally['pet']] .".";

这是将很多代码转换为字符串的代码。另外,你有一个不必要的可变$宠物的分配;

有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

如果你的数组有其键的整数(它确实如此),那么你正在做的事情是正确的,即:

$hr[$rs['tbHR']];

如果你的数组使用字符串作为其键,那么像array_slice这样的东西就可以了:

$salutation = array_slice($hr, $rs['tbHR'], 1);