Передайте строку PhP в Mootools в Wordpress - PullRequest
0 голосов
/ 21 октября 2011

У меня есть цикл foreach, который создает строку в php, я не могу передать значение строки в mootools в wordpress (я интегрирую функцию MooTool) :::

Мне нужно заменить «жестко запрограммированные» URL-адреса изображений в new Array () (ниже) переменной, созданной из моей строки php, например. новый массив ($ myimageurl) :::

Я создал переменную из строки php, даже попробовал json_encode, но не повезло :::

window.addEvent("domready", function(){
var counter = 0;
var images = new Array('http://localhost/square/wp-content/uploads/2011/10/test-foo/foo.jpg','http://localhost/square/wp-content/uploads/2011/10/test-foo/foo1.jpg');

Ответы [ 2 ]

1 голос
/ 21 октября 2011

э, почему бы просто:

var foo= <?=json_encode(Array("foo.jpg", "bar.jpg"))?>;

EDIT

Поскольку вы подразумевали в комментарии, что ваш источник файлов разделен запятой, сделайте это вместо:

<? $files = "foo.jpg,bar.jpg"; ?>
var foo = <?=json_encode(explode(',', $files))?>;

где массив может быть чем угодно, читать откуда угодно. это приведет к тому, что литерал массива будет выглядеть так:

var foo = ["foo.jpg","bar.jpg"]; 
// eg use. 
foo.each(function(img) {
    new Element("img", {src: img}).inject(document.body);
));

nb: только что заметил, @Marc B уже упомянул json_encode. извините, удалю

0 голосов
/ 21 октября 2011

попробуй:

var images = new Array('<?php echo $miImageUrl[0];?>', '<?php echo $miImageUrl[1];?>');

Другой способ:

<?php
//sample data
$descargables[0] = 'cero';
$descargables[1] = 'uno';
$descargables[2] = 'dos';
$descargables[3] = 'tres';
// end sample data

$arrayToJs="var descargables = new Array();";
for ($i=0; $i < count($descargables); $i++) {
    $arrayToJs .= "descargables[" . $i . "]='" . $descargables[$i]. "';";
}

?>

<script>
<?php echo $arrayToJs;?>
idx = 3;
alert("descargable:" + descargables[idx]);
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...