نیما حبیب خدا

آموزش طراحی یک قالب در php مانند قالب های جوملا

2 پست در این موضوع

سلام دوستان . میخوام امروز به کمک OOP یک کلاس طراحی کنیم که مانند قالب های جوملا از تگ های عجیب غریب استفاده کنیم و مانند smarty فایل های tpl ذخیره کنیم . سادست

سه فایل نیاز داریم . به ترتیب مینویسم : 1- فایل کلاس قالب 2- فایل دستورات قالب( فایل اجرایی) 3- فایل tpl

به ترتیب کدها رو مینویسم .. هرکس سوال داشت براشون توضیح میدم . ( چون اکثرا به آموزش کسی اهمیت نمیده و لقمه حاظر راحت تره . من فقط قرار میدم که اگر روزی کسی جستجو کرد ، به مطلبش برسه . )

1-- temclass.php


class NimaTem
{
   var $vars;

   function NimaTem()
   {
       $this->vars = array();
   }

   function assign($var_array)
   {

       if (!is_array($var_array))
       {
           die('NimaTem::assign() - $var_array باید آرایه باشد.');
       }
       $this->vars = array_merge($this->vars, $var_array);
   }

   function parse($tpl_file)
   {

       if (!is_file($tpl_file))
       {
           die('NimaTem::parse() - "' . $tpl_file . '" | فایل وجود ندارد');
       }
       $tpl_content = file_get_contents($tpl_file);

       foreach ($this->vars AS $var => $content)
       {
           $tpl_content = str_replace('<NimaTem:' . $var . '>', $content, $tpl_content);
       }
       return $tpl_content;
   }

   function display($tpl_file)
   {
       echo $this->parse($tpl_file);
   }
}

2-- nima.php


require_once('temclass.php');
$tpl = new NimaTem();
$tpl->assign(array(
   'title'   => 'یک موضوع برای تست',
   'content' => 'یک تست همراه لینک  <a href="http://www.php.net">نیما حبیب خدا</a>'
));
$tpl->display('nima.tpl');

3--- nima.tpl


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="UTF-8">
<title><NimaTem:title></title>
</head>

<body>

<p><NimaTem:content></p>

</body>
</html>

پس از ذخیره سازی ، فایل nima.php را اجرا کنید .

Share this post


Link to post
Share on other sites

من فعلا اونقدر php نمیدونم که دقیق متوجه این آموزش بشم

ولی خوشحال میشم اگه با توضیحات کامل بنویسید تا وقتی که ئی اچ ئی کار خوبی شدم بهش مراجعه کنم

عید غدیر مبارک

حق یارتان

Share this post


Link to post
Share on other sites

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری