2016-06-23 5 views
1

Я имею в виду this question. Можно ли использовать значения extract() из ассоциативного массива с дефисами/дефисами в их ключах к настоящему времени?PHP: Как извлечь() значения из ассоциативного массива с дефисами/тире в их ключах?

Речь идет о более старой версии WordPress Shortcode API. Пример:

function bartag_func($atts) { 
    extract(shortcode_atts(array(
     'foo-bar' => 'something' 
    ), $atts)); 

    return "foo = ${foo-bar}"; 
} 
add_shortcode('bartag', 'bartag_func'); 
+1

* 'smacks forhhead' * PHP все еще не изменил правила по именованию переменных. Если вам нужны значения, и они вам не нужны в переменных, вы можете использовать другой метод разбора массивов. –

ответ

4

shortcode_atts возвращает массив, поэтому просто используйте его.

function bartag_func($atts) { 
    $params = shortcode_atts(array(
     'foo-bar' => 'something' 
    ), $atts)); 

    return "foo = " . $params['foo-bar']; 
} 
add_shortcode('bartag', 'bartag_func'); 
+0

Хороший ответ, но ему не хватает точного ответа на проблему при экспорте поля. –