Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php codeigniter多语言中的排序_Php_Codeigniter_Sorting_Multilingual - Fatal编程技术网

Php codeigniter多语言中的排序

Php codeigniter多语言中的排序,php,codeigniter,sorting,multilingual,Php,Codeigniter,Sorting,Multilingual,有人知道如何根据项目的翻译对下拉列表进行排序吗?代码如下: echo form_open(''); $career = array( 'arquitect' => lang('arquitect'), 'dentists' => lang('dentists'), 'lawyers' => lang('lawyers'), 'teachers' => lang('teachers') ); echo form_dro

有人知道如何根据项目的翻译对下拉列表进行排序吗?代码如下:

echo form_open('');
$career = array(
    'arquitect'  => lang('arquitect'),
    'dentists'  =>  lang('dentists'),
    'lawyers'   =>  lang('lawyers'),
    'teachers'   => lang('teachers')
    );
echo form_dropdown('career',$career);
echo form_close();
我如何根据翻译对下拉列表进行排序,例如,西班牙语中的lang(“律师”)应该是“Abogado”,应该排在第一位

谢谢:)

lang()
函数应该为每个键提供转换后的值。在这种情况下,只需使用
asort()
按值对数组排序:

echo form_open('');
$career = array(
    'arquitect'  => lang('arquitect'),
    'dentists'  =>  lang('dentists'),
    'lawyers'   =>  lang('lawyers'),
    'teachers'   => lang('teachers')
    );
$career = asort($career); // Sort array by translated values
echo form_dropdown('career',$career);
echo form_close();

关于asort()的更多信息:

它不起作用。遇到PHP错误严重性:警告消息:为foreach()提供的参数无效文件名:helpers/form_helper.PHP行号:331如果不仔细查看整个代码,很难说。试着打印排序后的数组,看看里面是否有正确的数据,还有什么可以循环使用:
print\r($career)