PDA

View Full Version : حرفه ای: موتور قالب



ali.webdesign
دوشنبه 29 دی 1393, 21:36 عصر
سلام دوستان

من واسه پروژه خودم که مبتنی بر mvc هست میخوام موتور قالب بسازم

واسه همین یه کلاس template ساختم و بصورت زیر تعریف کردم



<?php

class Template {


function __construct(){

$this->set_folder('Template');


}

private function set_folder($d){
$this->dir = 'aplication/'.$d.'/';
}

private function parser($file){
$template = file_get_contents($this->dir.$this->agent.'/'.$file.'.tpl');
$search_array = array("&lt;", "&gt;", '&quot;', "{title}","{URL}","{URL_CSS}","{URL_JS}");
$replace_array = array("<", ">", '"', "سامانه هوشمند ارسال ایمیل تبلیغاتی",$this->url,'public/css/','public/js/');
$this->template = str_replace($search_array, $replace_array, $template);

}


public function load($file){

$this->parser($file);
echo $this->template;

}


}
?>



این کد واسه متغیر هایی که تعریف کردم خوبه و کار میکنه

ولی چطور میتونم واسه شرط ها و حلقه ها این کد رو مجهز کنم؟

هرچی فکر کردم چیزی به ذهنم نرسید اگه از دوستان کسی بلده دریغ نکنه بی زحمت

ممنون

ciph3r
دوشنبه 29 دی 1393, 21:49 عصر
موتور قالب چیه ؟این زده سیستم ارسال ایمیلمبهم نیست سوالاتواضحتر بپرس تا بتونیم بیشتر کمک کنیم

ali.webdesign
دوشنبه 29 دی 1393, 21:59 عصر
این کد فایل قالب رو باز میکنه چندتا عبارت رو جایگذاری میکنه و قالب رو نمایش میده
چیز خاصی نداره

من میخوام کاری کنم که تو فایل قالب بتونم شرط و حلقه ها رو هم اعمال کنم

us1234
دوشنبه 29 دی 1393, 22:30 عصر
اگر هدفتون جز آموزشی نیست و قصد کار واقعی دارید سعی کنید از انجین ها آماده استفاده کنید .

پیشنهاد من اسمارتی است .

ali.webdesign
دوشنبه 29 دی 1393, 22:47 عصر
وقت آموزش smarty ندارم والا میخوام خودم بنویسم اینطوری خیلی راحت تره درکش برام

ali.webdesign
سه شنبه 30 دی 1393, 14:53 عصر
سلام کسی تا حالا موتور قالب کد نکرده؟

nsco_nsco
سه شنبه 30 دی 1393, 15:14 عصر
سلام من منظورتون را از موتور قالب نمی فهمم منظورتون دقیقا چیه نکنه منظورتون اینه که یک سری اعمال را بتونیم با یک کد هر جا خواستیم در کد نمایش بدیم یا چیز دیگری هست ؟؟؟

DR.HTML
سه شنبه 30 دی 1393, 16:36 عصر
نمیدونم بعضی دوستان مجبورن پست وقتی اطلاعات کافی ندارن !‌
دوست عزیز شما یه سر به اینجا بزن احتمالا مشکلت حل میشه http://fabien.potencier.org/article/34/templating-engines-in-php

ciph3r
سه شنبه 30 دی 1393, 20:44 عصر
لینک که دوستمان دادن درسته و خوب توضیح داده اما شاید سنگین باشه چون دلیل اصلیشم انگلیسی بودن زبانشهدر اینجا توضیح داده که چیه : http://9px.ir/learn/what-is-a-template-engine/ئ در لینک زیر هم که در همین تالار خودمون بحث شده قبلا یکی زحمتشو کشیدهhttp://barnamenevis.org/showthread.php?439183-%D9%85%D8%B4%DA%A9%D9%84-%D8%A8%D8%A7-%D9%85%D9%88%D8%AA%D9%88%D8%B1-%D9%82%D8%A7%D9%84%D8%A8-%D8%AF%D8%B1-php

Mohammadsgh
سه شنبه 30 دی 1393, 21:29 عصر
دلیل خاصی داره از smarty ویا blade استفاده نمیکنید؟

ali.webdesign
سه شنبه 30 دی 1393, 21:46 عصر
شاید دلیلش کمبود وقت باشه و اینکه دوست دارم خودم یه موتور قالب بنویسم و کامل درکش کنم

اینجوری میتونم ارتقاش بدم

تشکر از دوستانی که منو راهنمایی کردن

Mohammadsgh
چهارشنبه 01 بهمن 1393, 20:28 عصر
بهترین موتور پوسته اسمارتیه و blade و twig هم خوبن.اگه از اینها استفاده کنید.یک موتور پوسته بهتر میتونید بسازید