P.S. Я новичок в codeigniter и искал ответы, но это далеко за пределами моего понимания, поэтому я задам этот вопрос для моего уровня.
Я только что нашел этот код для динамического помощника крошки в YouTube, и я получаю сообщение об ошибке. Ребята, вы можете помочь мне отладить это? Потому что я путаю с его кодом, но он эффективен, потому что вы просто повторяете функцию в VIEW.
Это ошибка:
Обнаружена ошибка PHP
Серьезность: ошибка синтаксического анализа
Сообщение: синтаксическая ошибка, неожиданное ‘;’
Имя файла: helpers / breadcrumb_helper.php
Номер строки: 15
Backtrace:
Вот код
<?php
if(!function_exists('generatedBreadcrumb')){
function generateBreadcrumb(){
$ci=&get_instance();
$i=1;
$iro = $ci->iri->segment($i);
$link='
<div class="pageheader">
<h2><i class="fa fa-edit"></i>'.$ci->uri->segment($i).'</h2>
<div class="breadcrumb-wrapper">
<ol class="breadcrumb">';
while($uri != "){
$prep_link = ";
$for($j=1; $j<=$i; $j++){
$prep_link.=$ci->uri->segment($j).'/';
}
if($ci->uri->segment($i+1)=="){
$link.='<li class="active"><a href=".site_uri($prep_link).">';
$link.=$ci->uri->segment($i).'</a></li>';
}else{
$link.='<li><a href=."site_url($prep_link).">';
$link.=$ci->uri->segment($i).'</a><span class="divider"></span></li>';
}
$i++;
$uri = $ci->uri->segment($i);
}
$link .='</ol></div></div>';
return $link;
}
}
Вы устанавливаете $variables
с одной двойной кавычкой, а не двумя, вот так:
while($uri != "){}
должно быть:
while($uri != ''){}
А также это:
$prep_link = ";
должно быть:
$prep_link = '';
И так далее.
if(!function_exists('generatedBreadcrumb')){
function generateBreadcrumb(){
$ci=&get_instance();
$i=1;
$uri = $ci->uri->segment($i);
$link='
<div class="pageheader">
<h2><i class="fa fa-edit"></i>'.$ci->uri->segment($i).'</h2>
<div class="breadcrumb-wrapper">
<ol class="breadcrumb">';
while($uri != ''){
$prep_link = '';
for($j=1; $j<=$i; $j++){
$prep_link.=$ci->uri->segment($j).'/';
}
if($ci->uri->segment($i+1)== ''){
$link.='<li class="active"><a href="'.site_url($prep_link).'">';
$link.=$ci->uri->segment($i).'</a></li>';
}else{
$link.='<li><a href="'.site_url($prep_link).'">';
$link.=$ci->uri->segment($i).'</a><span class="divider"></span></li>';
}
$i++;
$uri = $ci->uri->segment($i);
}
$link .='</ol></div></div>';
return $link;
}
}
Получение ошибки
Неустранимая ошибка: вызов функции-члена сегмента () в null в
breadcrumb_helper.php
Вы также изменили следующее, например:
$iro = $ci->iri->segment($i);
должно быть:
$uri = $ci->uri->segment($i);
И так далее.