Sorgu İşlemleri Sınıfı

PHP
85 lines
<?php
class Sorgu{
var $degiskenler;
function Sorgu($veri,$urlkodla = false){
if(!is_array($veri)){
if($veri != ""){
$veri = preg_replace("/^\?/","",$veri);
$islem = explode("&",$veri);
foreach($islem as $deger){
$t = explode("=",$deger);
$t[1] = urldecode($t[1]);
$this->degiskenler[$t[0]] = $t[1];
}
}else{
$this->degiskenler = array();
}
}else{
if($urlkodla){
foreach($veri as $anahtar => $deger){
$veri[$anahtar] = urldecode($deger);
}
}
$this->degiskenler = $veri;
}
}
function degistir($ad,$deger){
$this->degiskenler[$ad] = $deger;
}
function sil($ad){
unset($this->degiskenler[$ad]);
}
function cokluekle($veri,$urlkodla = false){
if(!is_array($veri)){
$veri = preg_replace("/^\?/","",$veri);
if($veri != ""){
$islem = explode("&",$veri);
foreach($islem as $deger){
$t = explode("=",$deger);
$t[1] = urldecode($t[1]);
$this->degiskenler[$t[0]] = $t[1];
}
}
}else{
if($urlkodla){
foreach($veri as $anahtar => $deger){
$veri[$anahtar] = urldecode($deger);
}
}
$this->degiskenler = array_merge($this->degiskenler,$veri);
}
}
function getdegiskenler($tip){
switch($tip){
case "array":
return $this->degiskenler;
break;
case "query":
$sonuc = "";
foreach($this->degiskenler as $anahtar => $deger){
if($sonuc != ""){
$sonuc = $sonuc."&";
}
$sonuc = $sonuc.$anahtar."=".urlencode($deger);
}
return $sonuc;
break;
case "hidden":
$sonuc = "";
foreach($this->degiskenler as $anahtar => $deger){
$sonuc = $sonuc."<input tip=\"hidden\" ad=\"{$anahtar}\" deger=\"".htmlentities($deger)."\" />\n";
}
return $sonuc;
break;
}
}
}
if($_GET['postugetecevir'] != 'evet'){
$postveri = new Sorgu($_POST);
$postveri->degistir('postugetecevir','evet');
$postveri->cokluekle($_GET);
$get = $postveri->getdegiskenler('query');
header("Location: {$_SERVER['SCRIPT_NAME']}?{$get}");
}
print_r($_REQUEST);
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Çıktısı

Markdown
1 lines
Array ( [postugetecevir] => evet )
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

 

Dizilerde Eleman Seçme, Ekleme ve Çıkarma Sınıfı

PHP
48 lines
<?php
class kuyruk {
var $k_dizi = array();
function kuyruk($dizi){$this->k_dizi=$dizi;}
function tumu(){return $this->k_dizi;}
function ilk(){return reset($this->k_dizi);}
function son(){return end($this->k_dizi);}
function sonraki(){return next($this->k_dizi);}
function onceki(){return prev($this->k_dizi);}
function mevcut(){return current($this->k_dizi);}
function sira($id){return $this->k_dizi[$id];}
function degistir($metin){return $this->k_dizi[$this->anahtar()]=$metin;}
function sil(){unset($this->k_dizi[$this->anahtar()]);return $this->mevcut();}
function anahtar(){return key($this->k_dizi);}
function boyut(){return sizeof($this->k_dizi);}
function ilkSil(){if($this->boyut()!=0){return array_shift($this->k_dizi);}else{return false;}}
function sonSil(){$c=count($this->k_dizi)-1;if($this->boyut()!=0){$s=$this->k_dizi[$c];unset($this->k_dizi[$c]);return $s;}else{return false;}}
function ekle($metin){array_values($this->k_dizi);$this->k_dizi[count($this->k_dizi)]=$metin;}
}
$arac = array('tabanvay', 'bisiklet', 'otomobil', 'uçak');
$k=new kuyruk($arac);
echo $k->sira(2)."<br>";//otomobil
echo $k->ilk()."<br>";//tabanvay
echo $k->sonraki()."<br>";//bisiklet
echo $k->sonraki()."<br>";//otomobil
echo $k->mevcut()."<br>";//otomobil
echo $k->onceki()."<br>";//bisiklet
echo $k->son()."<br>";//uçak
echo $k->anahtar()."<br>";//3
echo $k->boyut()."<br>";//4
print_r($k->tumu());//Array ( [0] => tabanvay [1] => bisiklet [2] => otomobil [3] => uçak )
echo "<br>";
$k->degistir("at")."<br>";
print_r($k->tumu());//Array ( [0] => tabanvay [1] => bisiklet [2] => otomobil [3] => at )
echo "<br>";
$k->sil();
print_r($k->tumu());//Array ( [0] => tabanvay [1] => bisiklet [2] => otomobil )
echo "<br>";
echo $k->ilkSil()."<br>";//tabanvay
print_r($k->tumu());//Array ( [0] => bisiklet [1] => otomobil )
echo "<br>";
echo $k->sonSil()."<br>";//otomobil
print_r($k->tumu());//Array ( [0] => bisiklet )
echo "<br>";
$k->ekle("davul");
$k->ekle("kalem");
print_r($k->tumu());//Array ( [0] => bisiklet [1] => davul [2] => kalem )
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Çıktısı

Markdown
17 lines
otomobil
tabanvay
bisiklet
otomobil
otomobil
bisiklet
uçak
3
4
Array ( [0] => tabanvay [1] => bisiklet [2] => otomobil [3] => uçak )
Array ( [0] => tabanvay [1] => bisiklet [2] => otomobil [3] => at )
Array ( [0] => tabanvay [1] => bisiklet [2] => otomobil )
tabanvay
Array ( [0] => bisiklet [1] => otomobil )
otomobil
Array ( [0] => bisiklet )
Array ( [0] => bisiklet [1] => davul [2] => kalem )
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX