2015-04-08 2 views
-3

У меня есть одна ошибка, но я не знаю, как ее решить.Синтаксическая ошибка, неожиданная '='

syntax error, unexpected '=' 

моя функция

function getPageId($pageSlug) { 
     "$". $pageSlug . "_slug" = $pageSlug; 
     "$". $pageSlug . "page" = get_page_by_path("$". $pageSlug ."_slug"); 
     "$". $pageSlug . "images" = get_children('pos_type=attachment&post_mime_type=image&post_parent=' . "$". $pageSlug . "page"->ID); 
    } 

вызов функции

getPageId("slider"); 

код, который я хочу переписать функцией

$page_slug ='slider'; 
$page = get_page_by_path($page_slug); 
$images = get_children('pos_type=attachment&post_mime_type=image&post_parent=' . $page->ID); 

пожалуйста, помогите решить эту ошибку Спасибо.

+0

replace = to. = Every where? –

+0

Что такое "страница"? – Priyank

+0

'$ {$ pageSlug. "_slug"} 'именно так вы создаете имена динамических переменных. –

ответ

3

If Вы абсолютно необходимо использовать динамические переменные (или variable variables) имена, которые вы можете создать их, как это:

function getPageId($pageSlug) { 
     ${$pageSlug . "_slug"} = $pageSlug; 
     ${$pageSlug . "page"} = get_page_by_path(${$pageSlug ."_slug"}); 
     ${$pageSlug . "images"} = get_children('pos_type=attachment&post_mime_type=image&post_parent=' . ${$pageSlug . "page"}->ID); 
} 

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

+0

Должен ли этот' $ {$ pageSlug. "_slug"} 'не быть' $ {pageSlug. "_slug"} '? Фактически второй работает, [demo] (https://eval.in/309889) – empiric

+0

спасибо за ваши ответы, я знаю об этом, но я просто начинаю изучать php, это первые шаги :) –

-1

заменить

function getPageId($pageSlug) { 
     "$". $pageSlug . "_slug" = $pageSlug; 
     "$". $pageSlug . "page" = get_page_by_path("$". $pageSlug ."_slug"); 
     "$". $pageSlug . "images" = get_children('pos_type=attachment&post_mime_type=image&post_parent=' . "$". $pageSlug . "page"->ID); 
    } 

с

function getPageId($pageSlug) { 
     "$". $pageSlug . "_slug". = $pageSlug; 
     "$". $pageSlug . "page". = get_page_by_path("$". $pageSlug ."_slug"); 
     "$". $pageSlug . "images". = get_children('pos_type=attachment&post_mime_type=image&post_parent='. "$". $pageSlug . "page"->ID); 
    } 
+0

Я пишу так же, как и ту же ошибку –

+0

изменить эту "страницу" -> Синтаксическая ошибка ID –

+0

изменить на что ??? –

0

Попробуйте это ..

You have to change '=' to '.=' 
    function getPageId($pageSlug) { 
      "$". $pageSlug . "_slug".= $pageSlug; 
      "$". $pageSlug . "page".= get_page_by_path("$". $pageSlug ."_slug"); 
      "$". $pageSlug . "images".= get_children('pos_type=attachment&post_mime_type=image&post_parent=' . "$". $pageSlug . "page"->ID); 
     } 
+0

та же ошибка ошибка синтаксиса, неожиданный '. =' (T_CONCAT_EQUAL) в C: \ xampp \ htdocs \ gawatt \ wp-content \ themes \ gawatt \ home.php в строке 13 –

-1

Попробуйте это:

function getPageId($pageSlug) { 
    "$". $pageSlug . "_slug" = $pageSlug; 
    "$". $pageSlug . "page" = get_page_by_path("$". $pageSlug ."_slug"); 
    "$". $pageSlug . "images" = get_children('pos_type=attachment&post_mime_type=image&post_parent=' . "$". $pageSlug . $page->ID); 
} 
+0

Несмотря на то, что вы изменили '' страницу '-> ID' на '$ page-> ID', остальная часть кода не будет работать – empiric

Смежные вопросы