如何在php for循环中生成动态字体真棒图标

I want to generate all current available font awesome icons dynamically in my php code, so user can select it. Do I need to hardcode all icons in an array or database? or is there any shortcut light weight way to do this? for example;

<?php
foreach($fonticons as $icon){ // $fonticons is an abstract array, It have nothing
    echo '<i class="fa '.$icon.'"></i>';
}
?>

so I should get;

<i class="fa fa-adjust"></i>
<i class="fa fa-anchor"></i>
<i class="fa fa-archive"></i>
<i class="fa fa-area-chart"></i>
<i class="fa fa-arrows"></i>
<i class="fa fa-hand"></i>....

is it possible?

I came to know that,

every font awesome icon has a unique unicode.

for example fa-adjust unicode is F042. you can see it in console css as . So what if set counter starts to F042 and loop and increment it in hex. and display this in html?

I can just copy paste this array and start using it. But I want it dynamic.

Yes, Problem solved, No need to create array. I've got free plugin Font Awesome Icon Picker which takes care of all font awesome icons list and GUI and it gives a textbox with value in it so when form submits, we gets the value in post.

Since only the name of the icon is different so stored all the name of the icons into some array and show like this ..

$icons = array('0' =>'adjust' ,'1'=>'anchor' );

foreach ($icons as $key => $res) {
    echo  '<i class="fa-'.$res.'"></i>';

}

Since your array looks something like this:

$font_awesome_icons_array = array( ‘fa-glass’ => ‘\f000’, ‘fa-music’ => ‘\f001’, ‘fa-search’ => ‘\f002’, ....

You can do this in a foreach loop.

forech($font_awesome_icons_array as $key=>$value){
 echo '<i class="fa '.$key.'"></i>';
}

The out put would look like:

<i class="fa fa-glass"></i>
<i class="fa fa-music"></i>

You can use a yaml parser and process the icons.yml file provided by font awesome git repository:

<?php
use Symfony\Component\Yaml\Yaml;

$yaml = Yaml::parse(file_get_contents('FONT_AWESOME_PATH/src/icons.yml'));
$icons = $yaml['icons'];

foreach($icons as $icon) {
    if(empty($icon['unicode'])) {
        continue;
    }
    echo '<i class="fa fa-'.$icon['id'].'"></i>';
}