Skip to content
farukcan edited this page Sep 29, 2016 · 13 revisions

Uygulamanızın Front-end kısmının saklandığı, html/css ağırlıklı proje dosyalarıdır. Webmastere çok büyük kolaylıklar sağlamaktadır.

Sayfa::yap($sayfa)

Bu fonksiyon bir sayfayı otomatik olarak oluşturur ve işler. Sayfa apisinin kullanılacak ek fonksiyonudur.

Sayfaların Kalıtımı

Bir web sitesi tasarlarken, tek parça halinde tasarlamayız. Menüler, Başlıklar, İçerikler, AltTaraf diye parçalara ayırırız. Bu parçalarda sayfadan sayfaya değişir. PHPratik tasarımı parçalayarak basitliği indirmeye çalışır. Her parçayı bir kalıba ayırır.

Eğer bir sayfanın kalıbı varsa sayfayı adlandırırken sayfa@ustkalıp şeklinde@ işareti ile belirtiriz

Örnek bir web site tasarlayalım.

5 tane sayfa(.html dosyası) oluşturalım /sayfa klasörünü

ANAKALIP
ALTKALIP@ANAKALIP 
SAYFA1@ALTKALIP@ANAKALIP
MENU1
FOOTER

ANAKALIP => sitemiz hemen hemen bu kalıpta olacaktır
ALTKALIP@ANAKALIP => bir alt kalıp daha olsun, kısmı kalıp değişikliği için
SAYFA1@ALTKALIP@ANAKALIP => kalıplardan oluşmuş ilk sayfamız...
MENU1 => menülerin alınacağı bir sayfa olsun
FOOTER => footerin alıcncağı bir sayfa olsun

Dikkat ALTKALIP ve SAYFA1 kalıtılmış sayfalar olduğu için sadece parçalardan oluşur. Bu parça dizi @ParçaBaşı(parça) ve @ParçaSonu arasında gelir. Fakat kalıtılmamış sayfalarda normal bir html sayfası kadar özgürüz.

alan(parca) : al sayfalarsan buraya gelecek olan parçaları ifade eder.

ANAKALIP

<div> alan(başlık) </div>
<div> alan(menüler) </div>
<div> alan(sayfa) </div>
DahilEt('FOOTER')

ALTKALIP

@ParçaBaşı(menüler)
   Alt kalıbın menülei bu şekildeir
   DahitEt('MENU1')
@ParçaSonu
@ParçaBaşı(sayfa)
   içerik nuraya gelecektir
   <div> alan(içerik) </div>
@ParçaSonu

SAYFA1

   @ParçaBaşı(başlık)
      SAYFA1 in başlığı
   @ParçaSonu

   @ParçaBaşı(içerik)
      SAYFA1 in içeriği
   @ParçaSonu

Şablonlama kodları

{{ php }}

Bir PHP değişkeni veya değerini bastır(echo). (Not: bu işlemler tek satırlık olmalıdır)

Benim adım {{ $ad }} , PHP değişkenleri kullanabilirim. <br>
İşlemde yapabilirim çünkü {{ (5+3)*5 }} yaşındayım. <br>
<b> Ortalamam : {{ ortalama($ben) }} olduğu için php fonksiyonlarıda kullanabiliyorum

{{{ php }}}

HTMl kodları arasında php işlemleri yapama

$b diye değişken olsun ve değeri {{ $b = 5 }} olsun.<br>
$c diye değişken olsun ve değeri {{ $c = 7 }} olsun.<br>
Aşağıdaki iki kelime arasında bir şey olmayacaktır. <br>
<b>Elma {{{ $a=$b+$c }}} Armut</b> <br>
<p>Fakat $a değeri {{ $a }} (13) olacaktır. </p>
fakat bu kullanım sadece tek satırlık php işlemi yapar <br>
<i>Aşağıdaki kullanım çok satırlık işlem yapar.</i> <br>
{{{ $a=$b ; $c=$d }}} <br>
Onun için çok satırlık php işlemlerinde satırlar arasına <b>;</b> işareti koyun
$a={{ $a }} $b={{ $b }} $c={{ $c }} $d={{ $d }}

DahilEt

@DahitEt('sayfa') veya @include('sayfa')

Başka bir sayfanın kodlarının aynısı alıp buraya dahil eder.

x sayfası olsun;

<b> burası x sayfanın kodlarıdır

y sayfası olsun;

Merhaba ben y sayfası <br>
<b> alt tarafı x sayfasından alacağım <br>
@DahilEt('x')

sonuç :

Merhaba ben y sayfası <br>
<b> alt tarafı x sayfasından alacağım <br>
<b> burası x sayfanın kodlarıdır

if-else

@if(şart) -> @elseif(şart) -> @else -> @end veya @endif

@if(5>7)
	<br> Bu gösterilmeyecek. Çünkü 5 7 den küçüktür
@elseif(13>7 && 50==100/5)
	<b> Fakat Bu  HTML Kodu gösterilecek . Üstteki şartlar doğrudur
@else
	<b> Eğer üsteki şart sağlanmasaydı bu gösterilirdi. FAkat üstteki şart doğru
@endif

for

@for(şart,şart,şart) -> @end veya @endfor

Normal php deki gibi aslında herşey <br>
@for($i=0;$i<5;$i++)
	<li> {{ ($i+1) }} . şey </li>
@endfor

foreach

@foreach(array as sırası => elemanı) -> @end veya @endforeach

foreachin kullanımında phpdekinde farkı yok
@foreach($insanlar as $insan)
	Adı : {{ $insan->ad }} <br>
	Yaş : {{ $insan->yas }} <br>
@endforeach

while

@while(şart) -> @end

{{{ $i = 15 }}}
15 ten geriye sayalım : <br>
@while($i--)
	<li> {{ $i }}  </li>
@end

Clone this wiki locally