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

<?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);
?>

Çıktısı

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

Düzenli İfade İle Veri Girişi Doğrulama Kontrol Sınıfı

<?php
class duzenliIfadeKontrol {
	public static function epostaKontrol($metin){
		return self::kontrol($metin,"/^[^@]*@[^@]*\.[^@]*$/");
	}
	public static function ipKontrol($metin){
		return self::kontrol($metin,"/^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$/");
	}
	public static function hexRenkKontrol($metin){
		return self::kontrol($metin,"/^#[a-fA-F0-9]{6}$/");
	}
	public static function hexNoKontrol($metin){
		return self::kontrol($metin,"/^[a-fA-F0-9]{6}$/");
	}	
	public static function rakamKontrol($metin){
		return self::kontrol($metin,"/^[-+]?\b[0-9]+(\.[0-9]+)?$/");
	}
	public static function sayiKontrol($metin){
		return self::kontrol($metin,"/^[-+]?\b[0-9]*\.?[0-9]+$/");
	}
	public static function kullaniciKontrol($metin){
		return self::kontrol($metin,"/^[a-z\d_]{4,28}$/i");
	}
	private static function kontrol($metin,$kural){
		if (preg_match($kural,$metin))
			return true;
		return false;
	}
}
echo "E-POSTA: ".duzenliIfadeKontrol::epostaKontrol("jordigirones@gmail.com")."<br>";
echo "IP: ".duzenliIfadeKontrol::ipKontrol("192.168.12.31")."<br>";
echo "HEX RENK: ".duzenliIfadeKontrol::hexRenkKontrol("#336AA9")."<br>";
echo "HEX NO: ".duzenliIfadeKontrol::hexNoKontrol("336AA9")."<br>";
echo "RAKAM: ".duzenliIfadeKontrol::rakamKontrol("12345")."<br>";
echo "SAYI: ".duzenliIfadeKontrol::sayiKontrol("12345.6789")."<br>";
echo "KULLANICI: ".duzenliIfadeKontrol::kullaniciKontrol("jgirones");
?>

Çıktısı

E-POSTA: 1
IP: 1
HEX RENK: 1
HEX NO: 1
RAKAM: 1
SAYI: 1
KULLANICI: 1