我已经想出如何做到这一点。我已将位置名称作为第三个参数从show.data_inline_location返回到location.php上,通过包含位置名称返回函数,如下所示:
show_data_inline_city($data['Cars_In_Location'], 'car', $data['Name']);
然后在函数本身中我添加了以下参数:
function show_data_inline_location($data, $type, $location_name)
并添加此项以创建URL友好字符串:
$loc_name = strtolower(str_ireplace(" ","-", $location_name));
然后回应这个:
echo '<a href="'.$link_url.$name.'-in-'.$loc_name.'"><div class="overlay">'.PHP_EOL;
这样我就不需要在开关中分离外壳,只需要将它用于'car'和'location'之间的区别:
if ($type == 'car') { echo 'this'; }
if ($type == 'location') { 'that'; }
感谢您的所有帮助。
答案 0 :(得分:0)
如果在$data
数组中有一辆车和一个位置,那么您可以执行以下操作来保存变量并在以后使用它们:
$loc_name = '';
$car_name = '';
foreach ($data as $key => $value) {
if ( is_special_car($value['name']) )
continue;
switch ($type) {
case 'car':
$car_name = $name;
break;
case 'location':
$loc_name = $name;
break;
default:
break;
}
if($loc_name && $car_name){
//You have a car and loc name now
}
}
如果您的$data
数组不同,则必须修改代码,当您在获取完所需内容后,可能需要重置$loc_name
和$car_name
。
答案 1 :(得分:0)
我已经弄清楚如何做到这一点。我已将位置名称作为第三个参数从show.data_inline_location返回到location.php上,通过包含位置名称返回到函数,如下所示:
show_data_inline_city($data['Cars_In_Location'], 'car', $data['Name']);
然后在函数本身中我添加了以下参数:
function show_data_inline_location($data, $type, $location_name)
并添加此项以创建URL友好字符串:
$loc_name = strtolower(str_ireplace(" ","-", $location_name));
然后回应这个:
echo '<a href="'.$link_url.$name.'-in-'.$loc_name.'"><div class="overlay">'.PHP_EOL;
这样我就不需要在开关中分离外壳,只需要用它来区分“汽车”和“汽车”之间的区别。和&#39; location&#39;:
if ($type == 'car') { echo 'this'; }
if ($type == 'location') { 'that'; }
感谢您的所有帮助。