2014-12-28 4 views
-1

i've есть некоторые проблемы со следующим кодомPHP-массивы - как использовать переменные внутри?

function search_query_filter2($query) { 
    if($query->is_search() && $query->is_main_query()) { 

     $test1 = 59602; 
     $test2 = 33142; 

     $plza = array($test1, $test2); 

     $query->set('meta_key', 'colabs_zipcode'); 
     $query->set('meta_value', $plza); 
     } 
} 

Прежде всего, этот код работает таким образом, отлично, теперь проблема:

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

 $test1 = 59602; 
     $test2 = 33142; 

, чтобы заставить их работать в массив(), как:

 $plza = array($test1, $test2); 

______________________________________________________________________________________

НО это должно выглядеть так, чтобы заставить его работать на мои требования (String в качестве переменной массива)

 $test = '59602,33140'; 

и

 $plza = array($test); 

Я не могу получить он работает =/

+0

Я не понимаю, что это неправильно и что должно быть исправлено – CMPS

+0

Проблема решена. Мне нужно использовать $ plza = explode (",", $ test); вместо $ plza = массив ($ test); для таких переменных, как $ test = '59602,33140'; –

ответ

0

Посмотрите на PHP взорваться() функция: http://php.net/manual/en/function.explode.php

Возвращает массив строк, каждая из которых представляет собой подстроку строки формируется путем разделения его на границы, образованные разделителем строк.

Ваш код будет похож на это:

$test = '59602,33140'; 
$plza = explode(',', $test);