تعديل/تصحيح PHP البسيط
-
25-09-2019 - |
سؤال
لقد حصلت على هذا الرمز من شخص ما ، إنه مثالي تقريبًا لإنشاء خبز ديناميكي ، ولكن هناك القليل من الخلل لأنه يردد فواصل قبل الخبز:
$crumbs = explode("/",$_SERVER["REQUEST_URI"]);
foreach($crumbs as $crumb){
echo ucfirst(str_replace(array(".php","_"),array(""," "),'>' . $crumb));
}
يردد:
">> المحتوى> مشترك> ملف"
ما أريده أن تبدو
"المحتوى> شائع> 1"
وأيضًا سأقدر بعمق ما إذا كان بإمكان شخص ما أن يخبرني كيف يمكنني إضافة روابط لجميع العناصر الموجودة في الصفيف باستثناء آخر (ملف)؟
شكرًا جزيلاً لكم الجميع ، ساعدني هذا الموقع كثيرًا على تعلم PHP بأمثلة!
المحلول
ربما سيفعل شيء من هذا القبيل:
// تخلص من الأجزاء الفارغة $ crumbs = array_filter ($ krumbs) ؛
$result = array();
$path = '';
foreach($crumbs as $crumb){
$path .= '/' . $crumb;
$name = ucfirst(str_replace(array(".php","_"),array(""," "), $crumb));
$result[] = "<a href=\"$path\">$name</a>";
}
echo implode(' > ', $result);
محدث
$result = array();
$path = '';
$num = count($crumbs);
for ($j=0; $j<$num; $j++) {
$crumb = $crumbs[$j];
if ($crumb == '') {
continue;
}
$path .= '/' . $crumb;
$name = ucfirst(str_replace(array(".php","_"),array(""," "), $crumb));
if ($j < ($num - 1)) {
$result[] = "<a href=\"$path\">$name</a>";
} else {
$result[] = $name;
}
}
echo implode(' > ', $result);
لا تنتمي إلى StackOverflow