jquery — как заключить переменную в одинарную кавычку

Я хочу вложить PHP переменная в одинарных кавычках, потому что я не могу получить доступ к переменным в двойных кавычках в моем JQUERY плагин (X-Editable)

PHP

$countries = array();
foreach($countries as $c){
$country_id = $c['country_id'];
$short_name = $c['short_name'];
array_push($countries, array('value' => '$country_id', 'text' => '$short_name'));    <-- I want something like this...
}

Я не могу использовать:

array('value' => $country_id, 'text' => $short_name) OR
array('value' => "$country_id", 'text' => "$short_name")

Jquery

$('#cus_country').editable({
type: 'select',
pk: '1',
url: '/user/inline_edit',
title: 'Enter Country',
source: '<?=json_encode($countries)?>',
display: function(value) {
if (value !== "Add Country"){
$(this).html('<i class="fa fa-pencil"></i>' + value);
}
},
success: function(response, newValue) {
//alert(response);
if(response.status == 'error') return response.msg;
}
});

РЕДАКТИРОВАТЬ
Когда я использую в качестве статических значений, он появляется в выпадающем меню без каких-либо ошибок. Но когда я помещаю переменную в массив, возникает проблема.

Например:

CASE # 1
$countries = array('value'=>'some', 'text'=>'thing');
output of this variable:
Array([0]=>Array([value]=>some [text]=>thing))

CASE # 2
$countries = array('value'=>$some, 'text'=>$thing);
output of this variable:
Array([0]=>Array([value]=>some [text]=>thing))

Как вы можете видеть, оба случая дают мне одинаковые результаты. Но первый случай создает выпадающий список, а второй нет.

0

Решение

array_push($countries, array('value' => "'.$country_id.'", 'text' => '$short_name'));

Вы должны использовать. , синтаксис в php, чтобы определить, где разыменовывать переменную. Используя '$test'вы не используете переменную, а строку со знаком доллара и тестом букв.

0

Другие решения

Я нашел проблему.

Это была неправильная форма переменной. В базе данных переменные были сохранены в следующем формате: People's thing, так далее.

Спасибо @jonathan Kuhn за помощь.

0

По вопросам рекламы [email protected]