Bir dizideki rakamların hepsini çarpar. Eğer rakam olmayan bir veri içerirse sonuç 0 çıkar.
<?php $rakamlar = array(1,2,"üç",4); echo array_product($rakamlar); //Çıktısı 0 $rakamlar = array(1,2,3,4); echo array_product($rakamlar); //Çıktısı 24 ?>
Bir dizideki rakamların hepsini çarpar. Eğer rakam olmayan bir veri içerirse sonuç 0 çıkar.
<?php $rakamlar = array(1,2,"üç",4); echo array_product($rakamlar); //Çıktısı 0 $rakamlar = array(1,2,3,4); echo array_product($rakamlar); //Çıktısı 24 ?>
<?php $veri= array("sifir", "bir", "iki", "üc"); $degistir = array(0 => "dört", 4 => "bes"); $degistir2 = array(0 => "alti"); $cikti = array_replace($veri,$degistir, $degistir2); print_r($cikti); ?>
İşlemi açıklamak gerekirse;
0 => “dört” değeri 0.indiste bulunan “sifir” ile değişiyor ve
“dört”,”bir”,”iki”,”üç” oluyor
4 => “bes” değeri 4.indiste birşey olmadığı için veriye ekleniyor ve
“dört”,”bir”,”iki”,”üç”,”bes” oluyor
0 => “alti” 0.indiste değişmiş olan “dört” ile tekrar yer değiştiriyor ve
“alti”,”bir”,”iki”,”üç”,”bes” oluyor
Yukarıdaki kodun çıktısı
Array ( [0] => alti [1] => bir [2] => iki [3] => üc [4] => bes )
array_reverse Kullanımı
Diziyi tersine çevirir ve isteğe bağlı olarak anahtar değeri ekler.
<?php $veri = array("bir", "iki", array("üç", "dört")); $sonuc = array_reverse($veri); $anahtarli_sonuc = array_reverse($veri , true); ?> <?php print_r($sonuc); ?> Yukarıdakinin çıktısı: Array ( [0] => Array ( [0] => üç [1] => dört ) [1] => iki [2] => bir ) <?php print_r($anahtarli_sonuc); ?> Yukarıdakinin çıktısı: Array ( [2] => Array ( [0] => üç [1] => dört ) [1] => iki [0] => bir )
<?php $veri = array("bir", "iki", "üç", "dört"); array_shift($veri); print_r($veri); ?> Çıktısı Array ( [0] => iki [1] => üç [2] => dört ) <?php $veri = array("bir", "iki", "üç", "dört"); array_pop($veri); print_r($veri); ?> Çıktısı Array ( [0] => bir [1] => iki [2] => üç )
<?php $meyve = array("elma" => 1, "armut" => 4, "cilek" => 3 ); $degis = array_flip($meyve); print_r($degis); ?>
Çıktısı
Array ( [1] => elma [4] => armut [3] => cilek )
array_unshift Kullanımı
Hem dizileri hem tek verileri dizinin başına ekler.
<?php $dizi = array("elma","armut"); $eklenecek = "ayva"; array_unshift($dizi, $eklenecek); print_r($dizi); ?> Yukarıdaki örneğin çıktısı: ( [0] => ayva [1] => elma [2] => armut )
array_push Kullanımı
Hem dizileri hem tek verileri dizinin sonuna ekler.
<?php $dizi = array("elma","armut"); $eklenecek = "ayva"; array_push($dizi, $eklenecek); print_r($dizi); ?> Yukarıdaki örneğin çıktısı: Array ( [0] => elma [1] => armut [2] => ayva )
array_merge Kullanımı
Sadece dizileri birleştirir.
<?php $dizi = array("elma","armut"); $eklenecek = array("çilek","ayva"); $yeni=array_merge($dizi, $eklenecek); print_r($yeni); ?> Yukarıdaki örneğin çıktısı: Array ( [0] => elma [1] => armut [2] => çilek [3] => ayva )
array_keys Kullanımı
Dizideki anahtar isimlerini döndürür.
<?php $dizi = array(0 => "a", "renk" => "beyaz"); print_r(array_keys($dizi)); ?>
çıktısı
Array ( [0] => 0 [1] => renk )
array_values Kullanımı
Dizideki anahtarlara ait değerleri döndürür.
<?php $dizi = array(0 => "a", "renk" => "beyaz"); print_r(array_values($dizi)); ?>
çıktısı
Array ( [0] => a [1] => beyaz )
<?php /* PHP For Döngüsü Kullanım Örnekleri ve Matematiksel İşlemler Instagram @ulusanzeynel 17.06.2015 */ /* PHP İle Faktöriyel Hesaplatmak */ function faktoriyel($sayi){ $sonuc=1; for($i=1;$i<=$sayi;$i++){ $sonuc *=$i; } echo "$sayi != ".$sonuc; } /* PHP İle Üst Alma İşlemi */ function üstal($sayi , $üst){ $sonuc=1; for ($i=1;$i<=$üst;$i++){ $sonuc*=$sayi; } echo "$sayi üzeri $üst =".$sonuc; } /* PHP İle Permütasyon Hesaplatmak */ function permütasyon($kaçın,$kaçlısı){ $sonuc=1; $sonucc=1; for($i=1;$i<=$kaçın;$i++){ $sonuc *=$i; } for($ii=1;$ii<=$kaçlısı;$ii++){ $sonucc *=$ii; } echo "p($kaçın,$kaçlısı) = ".($sonuc/$sonucc); } /* Kısa Yoldan Permütasyon */ function permütasyonkısa($kaçın,$kaçlısı){ $sonuc=1; for ($i=$kaçın-($kaçın-$kaçlısı)+1;$i<=$kaçın;$i++){ $sonuc *=$i; } echo "p($kaçın,$kaçlısı)=".$sonuc; } /*PHP ile Kombinasyon Hesaplamak*/ function kombinasyon ($kaçın,$kaçlısı){ $sonuc=1; $sonucc=1; $sonuccc=1; //n! for($i=1;$i<=$kaçın;$i++){ $sonuc *=$i; } //r! for($ii=1;$ii<=$kaçlısı;$ii++){ $sonucc *=$ii; } //n-r! for($iii=1;$iii<=$kaçın-$kaçlısı;$iii++){ $sonuccc *=$iii; } echo "c($kaçın,$kaçlısı) = ".($sonuc/($sonucc*$sonuccc)); } /* Kısa Yoldan Kombinasyon */ function kombinasyonkısa($kaçın,$kaçlısı){ $sonuc=1; $sonucc=1; for ($i=$kaçın-$kaçlısı+1;$i<=$kaçın;$i++){ $sonuc *=$i; } for($ii=1;$ii<=$kaçlısı;$ii++){ $sonucc *=$ii; } echo "c($kaçın,$kaçlısı)=".$sonuc/$sonucc; } /* PHP ile Karmaşık Sayının Üslü Halini Bulma */ function karmasiksayi($kaçıncıkuvvet){ $karmaşık=array( 0=>"1", 1=>"i", 2=>"-1", 3=>"-i", ); $deger=$kaçıncıkuvvet%4; echo "i üzeri $kaçıncıkuvvet = ".$karmaşık[$deger]; } karmasiksayi(16); /* Örnek Kullanımlar faktoriyel(4); => 4! = 24 sonucunu verir. üstal(2,3); => 2 üzeri 3 = 8 sonucunu verir. permütasyon(7,5) => p(7,5) =42 değerini verir. permütasyonkısa(7,5) => p(7,5) =42 değerini verir. kombinasyon(7,2) => c(7,2) =21 değerini verir kombinasyonkısa(7,2) => c(7,2) =21 değerini verir karmasiksayi(16) => i üzeri 16 =1 değerini verir. */ ?>
<?php function ek($isim){ $sesliharfler=array('a','e','i','ı','o','ö','u','ü'); $sonharfd=array('a'=>'nın','e'=>'nin','i'=>'nin','ı'=>'nın','u'=>'nun','ü'=>'nün','o'=>'nun','ö'=>'nün'); $sondanikinciharfd=array('a'=>'ın','e'=>'in','i'=>'in','ı'=>'ın','u'=>'un','ü'=>'ün','o'=>'un','ö'=>'ün'); mb_internal_encoding("UTF-8"); $sonharf= mb_substr($isim,-1); $sondanikinciharf= mb_substr($isim,-2,1); $sondanücüncüharf=mb_substr($isim,-3,1); if(in_array($sonharf,$sesliharfler,true)){ return $isim."'".$sonharfd[$sonharf]; }elseif(in_array($sondanikinciharf,$sesliharfler,true)){ return $isim."'".$sondanikinciharfd[$sondanikinciharf]; }else{ return $isim."'".$sondanikinciharfd[$sondanücüncüharf]; } } $isim="Mehmet Ali"; echo ek($isim)." Doğum Günü"; ?>
Çıktısı: Mehmet Ali’nin Doğum Günü
Not: Facebook‘taki bu eksiği bulup bu fonksiyonu hazırlayan kardeşim Zeynel ‘e Teşekkürler…
Böyle bir tablomuz olduğunu varsayalım
CREATE TABLE IF NOT EXISTS `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `ad` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; INSERT INTO `test` (`ad`) VALUES ('veli'),('ali'),('veli'),('ali'),('veli'),('ali');
Tekrar eden tüm verileri silmek için (Çiftten fazla var ise tercih edilir)
(Not:En son 1 tane bırakılır)
DELETE t1 FROM test t1, test t WHERE t1.id < t.id AND t1.ad = t.ad
Tekrar eden en son eklenen kaydı silme(Genelde çift kayıtlar için)(Son ekleneni silerek)
(Not:3 tane aynı veri var ise 2 tane kalır)
(Not:2 tane aynı veri var ise 1 tane kalır)
(Not:1 tane aynı veri var ise yine 1 tane kalır)
(Yani sürekli tekrarlanırsa 1’er 1’er silerek üstteki yaptığımız işleme ulaşılmış olur)
DELETE FROM test WHERE exists ( select * from (select MAX(p.id) ciftid,count(*) FROM test as p GROUP BY p.ad HAVING count(*)>1 ) as cift WHERE cift.ciftid=test.id )
Çıktısı
+------+ | ad | +------+ | ali | | veli | +------+