我有一个在线游戏中所有汽车的阵列我看起来像这样:
$GLOBALS['car_park'] = array (
"Toyota iQ3", "Think City", "Lancia Ypsilon", "Smart fourtwo", "Chevrolet Matiz", "Mazda 2", "Peugeot 107", "Nissan Micra", "Mercedes-Benz 310" /* dårlige biler */
, "Lexus IS-F", "BMW M3 CSL", "Volvo C30", "Dodge Challenger RT", "Audi S3", "Omnibus Sunrider" /* bedre biler vanskelighetsgrad i forhold til dårlige biler 2.45x */
, "Chevrolet Camaro SS", "Porsche GT2 RS", "Lotus Elise", "Rolls-Royce Phantom", "BMW 5-series", "DAF SB3000 Berkhof" /* bra biler 4x */
, "Lamborghini Murcielago", "Ascari A10", "McLaren F1", "Pagani Zonda R" /* sinnsyke biler 8x */
);
$car_name = "Rolls-Royce Phantom"
$car_nr = ?
我有一个汽车名称,我需要的是汽车的nr。这是18($ GLOBALS ['car_park'] [18])。如何通过功能找到它? array_search?
答案 0 :(得分:1)
可以这样做:
$car_name = "Rolls-Royce Phantom";
$car_nr = array_search($car_name, $GLOBALS['car_park']);
答案 1 :(得分:0)
答案 2 :(得分:0)
如果您在脚本中经常执行此操作,请考虑不使用慢的array_search,而是快速查找操作。
在脚本开头翻转你的汽车数组:
$cars = array_flip(...);
然后使用查找搜索:
if (isset($cars[CAR_NAME])) {
echo $cars[CAR_NAME];
}
else {
echo 'Car not found';
}