Как быстро найти ошибку в коде?

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО InstantCMS 2.X
#1 17 января 2019 в 17:20
Смержил файлы, обновился, но где-то что-то пропустил и ругается на синтакс.
Как можно подсветить ошибку?
Parse error: syntax error, unexpected end of file in / / /templates/default/content/default_item.tpl.php on line 197
  1.  
  2.  
  3. <div class="info_top">
  4. <div class="item_top_left">
  5. <?php if ($fields['title']['is_in_item']){ ?>
  6. <h1>
  7. <?php html($item['title']); ?>
  8. <?php if ($item['is_private']) { ?>
  9. <span class="is_private" title="<?php html(LANG_PRIVACY_HINT); ?>"></span>
  10. <?php } ?>
  11. </h1>
  12. <div class="info_ads">
  13. <div class="nomer_ads" title="<?php html(LANG_NOMER_ADS); ?>"> <?php html(LANG_NOMER); ?><?php echo $item['id']; ?> </div>
  14. &#8195;
  15. <?php if ($fields['date_pub']['is_in_item']){ ?>
  16. <div class="bar_item bi_date_pub" title="<?php html( $fields['date_pub']['title'] ); ?>">
  17. <?php html(LANG_DATE_PUB); ?> <?php echo $fields['date_pub']['html']; ?>
  18. </div>
  19. <?php } ?>
  20. <?php if (!empty($ctype['options']['hits_on'])){ ?>
  21. <div class="bar_item bi_hits" title="<?php echo LANG_HITS; ?>">
  22. <?php echo $item['hits_count']; ?>
  23. </div>
  24. <?php } ?>
  25.  
  26.  
  27.  
  28.  
  29. </div>
  30.  
  31. <?php } ?>
  32. </div>
  33. <div class="item_top_right" style=" min-width: 150px;font-size: 26px; ">
  34. <div class="price_right" style="font-weight: bold; ">
  35. &#8194;<?php echo $item['price'];?> &#8381;
  36. </div>
  37.  
  38. </div>
  39. </div>
  40.  
  41.  
  42.  
  43. <?php if ($item['parent_id'] && !empty($ctype['is_in_groups'])){ ?>
  44. <h2 class="parent_title item_<?php echo $item['parent_type']; ?>_title">
  45. <a href="<?php echo rel_to_href($item['parent_url']); ?>"><?php html($item['parent_title']); ?></a>
  46. </h2>
  47. <?php } ?>
  48. <?php unset($fields['title']); ?>
  49.  
  50. <?php if ($this->hasMenu('item-menu')){ ?>
  51. <div id="content_item_tabs">
  52. <div class="tabs-menu">
  53. <?php $this->menu('item-menu', true, 'tabbed'); ?>
  54. </div>
  55. </div>
  56. <?php } ?>
  57.  
  58. <div class="content_item <?php echo $ctype['name']; ?>_item">
  59.  
  60. <?php if (!empty($fields)) { ?>
  61.  
  62. <?php $fields_fieldsets = cmsForm::mapFieldsToFieldsets($fields, function($field, $user) use ($item) {
  63. if (!$field['is_in_item'] || $field['is_system']) { return false; }
  64. if ((empty($item[$field['name']]) || empty($field['html'])) && $item[$field['name']] !== '0') { return false; }
  65. if ($field['groups_read'] && !$user->isInGroups($field['groups_read'])) { return false; }
  66. return true;
  67. } ); ?>
  68.  
  69. <?php foreach ($fields_fieldsets as $fieldset_id => $fieldset) { ?>
  70.  
  71. <?php $is_fields_group = !empty($ctype['options']['is_show_fields_group']) && $fieldset['title']; ?>
  72.  
  73. <?php if ($is_fields_group) { ?>
  74. <div class="fields_group fields_group_<?php echo $ctype['name']; ?>_<?php echo $fieldset_id ?>">
  75. <h3 class="group_title"><?php html($fieldset['title']); ?></h3>
  76. <?php } ?>
  77.  
  78. <?php if (!empty($fieldset['fields'])) { ?>
  79. <?php foreach ($fieldset['fields'] as $name => $field) { ?>
  80.  
  81. <div class="field ft_<?php echo $field['type']; ?> f_<?php echo $field['name']; ?> <?php echo $field['options']['wrap_type']; ?>_field" <?php if($field['options']['wrap_width']){ ?> style="width: <?php echo $field['options']['wrap_width']; ?>;"<?php } ?>>
  82. <?php if ($field['options']['label_in_item'] != 'none') { ?>
  83. <div class="title_<?php echo $field['options']['label_in_item']; ?>"><?php html($field['title']); ?>: </div>
  84. <?php } ?>
  85. <div class="value"><?php echo $field['html']; ?></div>
  86. </div>
  87. <?php } ?>
  88. <?php } ?>
  89.  
  90. <?php if ($is_fields_group) { ?></div><?php } ?>
  91.  
  92. <?php } ?>
  93.  
  94. <?php } ?>
  95.  
  96.  
  97. <?php if ($props_fieldsets) { ?>
  98. <?php if ($props && array_filter((array)$props_values)) { ?>
  99. <?php
  100. $props_fields = $this->controller->getPropsFields($props);
  101. $props_fieldsets = cmsForm::mapFieldsToFieldsets($props);
  102. ?>
  103. <div class="content_item_props <?php echo $ctype['name']; ?>_item_props">
  104.  
  105.  
  106. <div class="" style="overflow: hidden;">
  107. <?php foreach($props_fieldsets as $fieldset){ ?>
  108.  
  109. <?php if ($fieldset['fields']){ ?>
  110. <?php foreach($fieldset['fields'] as $prop){ ?>
  111. <?php if (isset($props_values[$prop['id']])) { ?>
  112. <div class="" style="float: left; min-width: 250px;">
  113. <?php $prop_field = $props_fields[$prop['id']]; ?>
  114. <div class="title_<?php echo $ctype['name']; ?>" style="font-size: 16px; color: rgba(0,0,0,.48); float: left; margin-right: 10px; line-height: 20px;padding-bottom: 8px;">
  115. <?php html($prop['title']); ?>:
  116. </div>
  117. <div class="value_<?php echo $ctype['name']; ?>" style="font-size: 16px; line-height: 20px; padding-bottom: 8px; color: #000;">
  118. <?php echo $prop_field->setItem($item)->parse($props_values[$prop['id']]); ?>
  119. </div>
  120. </div>
  121. <?php } ?>
  122. <?php } ?>
  123. <?php } ?>
  124. <?php } ?>
  125. </div>
  126. </div>
  127. <?php } ?>
  128.  
  129. <?php
  130. $hooks_html = cmsEventsManager::hookAll("content_{$ctype['name']}_item_html", $item);
  131. if ($hooks_html) { echo html_each($hooks_html); }
  132. ?>
  133.  
  134. <?php if (!empty($item['show_tags'])){ ?>
  135. <div class="tags_bar">
  136. <?php echo html_tags_bar($item['tags'], 'content-'.$ctype['name'])
#2 17 января 2019 в 17:34
Capitan, такая ошибка возникает, если где то нет закрывающей скобки, точки с запятой, запятой.
Если пользуетесь notepad++ (или другим кошерным редактором, который закрывает блоки), то закрывайте один завешенный блок за другим. Тот, который останется — и есть битый (незавершенный). Обычная ошибка при копировании через буфер обмена.
#3 17 января 2019 в 17:45
Скопировал ваш листинг себе в notepad++ и буквально наткнулся на недопустимый символ в 33 строчке:
  1. &#8194;<?php echo $item['price'];?> &#8381;
этот символ стоит перед тегом <?php
#4 17 января 2019 в 17:45
Вроде как тут, но все ведь на месте
  1. <?php $fields_fieldsets = cmsForm::mapFieldsToFieldsets($fields, function($field, $user) use ($item) {
  2. if (!$field['is_in_item'] || $field['is_system']) { return false; }
  3. if ((empty($item[$field['name']]) || empty($field['html'])) && $item[$field['name']] !== '0') { return false; }
  4. if ($field['groups_read'] && !$user->isInGroups($field['groups_read'])) { return false; }
  5. return true;
  6. } ); ?>
#5 17 января 2019 в 17:48

этот символ стоит перед тегом <?php

Кирилл Эдуардович (Странник)
Это символ пробела
#6 17 января 2019 в 17:55
Capitan, перед последним <div> поставьте это
  1. <?php } ?>
#7 17 января 2019 в 17:59

Capitan, перед последним <div> поставьте это
Код PHP:

<?php } ?>

Loadырь

Да всем спасибо. Сам нашел :))
Пропустил <?php } ?> перед
<?php
$hooks_html
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.