Toplamı Belirli Rastgele Ondalıklı Sayılar Üretmek

PHP
17 lines
<?php
class rastgeleOndalikliSayiOlustur{
public $sayiolustur = array();
function __construct($toplam, $kac){
$i = 0;
while ($i != $kac) {
if ($i == $kac - 1) { $this->sayiolustur[count($this->sayiolustur)] = $toplam; } else {
$this->sayiolustur[count($this->sayiolustur)] = round(lcg_value() * intval($toplam / rand(1, rand(2, $kac - $i))), 2);
$toplam -= $this->sayiolustur[count($this->sayiolustur) - 1];
}
$i++;
}
}
}
$r = new rastgeleOndalikliSayiOlustur(125, 6);
print_r($r->sayiolustur);
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Çıktısı

Markdown
10 lines
Array
(
[0] => 26.29
[1] => 11.57
[2] => 41.69
[3] => 12.95
[4] => 14.69
[5] => 17.81
)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Özelleştirilmiş Şifre Üretici

PHP
45 lines
<?php
class SifreUretici{
var $wc;
var $w;
var $l;
var $minl;
var $maxl;
function SifreUretici($min, $max, $dizi=NULL){
if($dizi == NULL){
$this->wc = array('_','-'); // special chars
for($i=48; $i<58; $i++){
array_push($this->wc, chr($i)); // 0-9
}
for($i=65; $i<91; $i++){
array_push($this->wc, chr($i)); // A-Z
}
for($i=97; $i<122; $i++){
array_push($this->wc, chr($i)); // a-z
}
shuffle($this->wc);
}
else{
$this->wc = $dizi;
}
$this->minl = $min;
$this->maxl = $max;
}
function olustur(){
$this->w = NULL;
$this->l = rand($this->minl, $this->maxl);
for($i=0; $i<$this->l; $i++){
$no = rand(0, count($this->wc)-1);
$this->w .= $this->wc[$no];
}
return htmlentities($this->w);
}
}
$s = new SifreUretici(10, 16); //10-16 karakter arası şifre üretir.
echo $s->olustur();
echo "<br>";
$dizi = array('a','b','1','!'); // Sadece bu karakterlerden 8 haneli şifre üretir
$s = new SifreUretici(8,8,$dizi);
echo $s->olustur();
echo "<br>";
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Çıktısı

Markdown
2 lines
f_aDfXWCmKK4t
!bb!1ab1
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

 

Form Giriş ve Denetim Sınıfı

PHP
48 lines
<?php
Class girisKontrol{
var $form=null;
function __construct(){
$this->form.='<form method="post" action="">';
}
function metinKontrol($name,$value,$tut){
$this->form.='<input type="text" name="'.$name.'" value="'.$value.'" placeholder="'.$tut.'">';
}
function sifreKontrol($name,$value,$tut){
$this->form.='<input type="password" name="'.$name.'" value="'.$value.'" placeholder="'.$tut.'">';
}
function metinKutusuKontrol($name,$value,$tut){
$this->form.='<textarea name="'.$name.'" placeholder="'.$tut.'">'.$value.'</textarea>';
}
function onayKutusuKontrol($name,$value){
$this->form.='<input type="checkbox" name="'.$name.'" value="'.$value.'">';
}
function radyoKontrol($name,$value){
$this->form.='<input type="radio" name="'.$name.'" value="'.$value.'">';
}
function butonKontrol($type,$name,$value,$tut){
$this->form.='<input type="'.$type.'" name="'.$name.'" value="'.$value.'" placeholder="'.$tut.'">';
}
function secenekEkle($name){
$this->form.='<option value="">'.$name.'</option>';
}
function listeKontrol($value){
$this->form.='<select name="">';
foreach($value as $v){
$this->form.=$this->secenekEkle($v);
}
$this->form.='</select>';
}
function yazdir(){
$this->form.='</form>';
return $this->form;
}
}
$gK = new girisKontrol;
$gK->metinKontrol("abc","","Bir metin giriniz");
$gK->sifreKontrol("abc","","Şifre");
$gK->metinKutusuKontrol("abc","","Birşeyler Yazınız");
$gK->listeKontrol(["Ankara","Aksaray"]);
$gK->onayKutusuKontrol("abcd","");
$gK->radyoKontrol("abc","");
$gK->butonKontrol("button","gonder","Tıkla","");
echo $gK->yazdir();
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Çıktısı

Markdown
9 lines
<form method="post" action="">
<input type="text" name="abc" value="" placeholder="Bir metin giriniz"><input type="password" name="abc" value="" placeholder="Şifre">
<textarea name="abc" placeholder="Birşeyler Yazınız"></textarea>
<select name="">
<option value="">Ankara</option>
<option value="">Aksaray</option>
</select>
<input type="checkbox" name="abcd" value=""><input type="radio" name="abc" value=""><input type="button" name="gonder" value="Tıkla" placeholder="">
</form>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX