Php De Atama
-
1 = Tahribat
2 = Underzero
3 = php kodlari
....
elimde 12 tane kelime var random $sayi= rand(1,12); seklinde 1-12 rakamlari bastirabiliyorum ama random 1 ciktigi zaman ekrana tahribat yazsin, 2 ciktigi zaman underzero ciksin fonksiyonu lazim :)
-
-
<?php
$sayi= rand(0,3);
$cars = array("Volvo", "BMW", "Toyota");
echo "I like " . $cars[$sayi] . ", " . $cars[$sayi] . " and " . $cars[$sayi] . ".";
?>tam boyle birsey buldum diyordum ki yazmissin deniyeyim hemen
-
underzero bunu yazdı
$sayi= rand(0,3);
$cars = array("Volvo", "BMW", "Toyota");
echo "I like " . $cars[$sayi] . ", " . $cars[$sayi] . " and " . $cars[$sayi] . ".";
?>tam boyle birsey buldum diyordum ki yazmissin deniyeyim hemen
function getRandomName() {
$cars = array("Volvo", "BMW", "Toyota");
$random = rand(0, count($cars)-1);
echo "I like " . $cars[$random];
}
veya daha iyisi
$cars = array("Volvo", "BMW", "Toyota"); // globalfunction getRandomName() {
echo "I like " . $cars[rand(0, count($cars)-1)];
} -
underzero bunu yazdı
$sayi= rand(0,3);
$cars = array("Volvo", "BMW", "Toyota");
echo "I like " . $cars[$sayi] . ", " . $cars[$sayi] . " and " . $cars[$sayi] . ".";
?>tam boyle birsey buldum diyordum ki yazmissin deniyeyim hemen
Bu kod hatalı çünkü ekrana üç kez aynı arabayı yazar
I like Toyota, Toyota and Toyota. gibi
phptester . net adresinden php test edilebilir -
Cevdet bunu yazdıunderzero bunu yazdı
$sayi= rand(0,3);
$cars = array("Volvo", "BMW", "Toyota");
echo "I like " . $cars[$sayi] . ", " . $cars[$sayi] . " and " . $cars[$sayi] . ".";
?>tam boyle birsey buldum diyordum ki yazmissin deniyeyim hemen
function getRandomName() {
$cars = array("Volvo", "BMW", "Toyota");
$random = rand(0, count($cars)-1);
echo "I like " . $cars[$random];
}
veya daha iyisi
$cars = array("Volvo", "BMW", "Toyota"); // globalfunction getRandomName() {
echo "I like " . $cars[rand(0, count($cars)-1)];
}$cars = array("Volvo", "BMW", "Toyota"); // global
function getRandomName() {
echo "I like " . $cars[rand(0, count($cars)-1)];
}Bu da hatali, fonksiyon disindaki degisken global degil. "Kimi sayip randomluyorum ben amk" der yorumlayici.
-
$cars = array("Volvo", "BMW", "Toyota"); // globalfunction getRandomName() {
global $cars;
echo "I like " . $cars[rand(0, count($cars)-1)];
} -
underzero bunu yazdı
$sayi= rand(0,3);
$cars = array("Volvo", "BMW", "Toyota");
echo "I like " . $cars[$sayi] . ", " . $cars[$sayi] . " and " . $cars[$sayi] . ".";
?>tam boyle birsey buldum diyordum ki yazmissin deniyeyim hemen
Daha kayfalti yapmadim, kafam pek berrak degil. Fakat istenilen ciktiyi verebilecek amele isi bir kod yazdim :D
<?php function cAR($arr){ //c.ount A.nd R.and global $already_printed; $rand = $arr[rand(0, count($arr)-1)]; if (in_array($rand, $already_printed)) return cAR($arr); $already_printed[] = $rand; return $rand; } $already_printed = []; $cars = ["Volvo", "BMW", "Totoya"]; echo "I like ".cAR($cars).", ".cAR($cars)." and ".cAR($cars).".";
Muhtemelen cok daha kolay bir sekilde yapilabiliyordur. Cok fazla rand donmesine sebep olabilir buyuk arraylerde, bu da performans kaybi demek...
-
Cevdet bunu yazdı
$cars = array("Volvo", "BMW", "Toyota"); // globalfunction getRandomName() {
global $cars;
echo "I like " . $cars[rand(0, count($cars)-1)];
}Simdi oldu iste hocam :D
Alternatif olarak global degisken atamak icin
function getRandomName() { $cars = $GLOBALS['cars']; //lokal degisken echo "I like " . $cars[rand(0, count($cars)-1)]; //veya echo "I like " . $GLOBALS['cars'][rand(0, count($GLOBALS['cars'])-1)]; } $GLOBALS['cars'] = array("Volvo", "BMW", "Toyota"); getRandomName();
de kullanilabilir, konuyu okuyanlara arz edilir :D
-
array_rand diye bir fonksiyon var baskan, diziden random bir elemanın keyini verir. o key ile diziden o random elemanı çekebilirsin.
$array = ["kedi", "kus", "kopek", "fare"];
echo $array[array_rand($array)];
-
AŞAĞIDAKİ KODA GÖRE ÜST ÜSTE AYNI ARABA ADI GELMEZ
--------------------------------------------------------------
$cars = array("Volvo", "BMW", "Toyota"); // global
function getRandomName() {
global $cars;
echo "I like " . $cars[0];
array_splice($cars, rand(2, count($cars)), 0, $cars[0]);
unset($cars[0]);
$cars = array_values($cars);
}
for ($k=0; $k<99; $k++)
getRandomName();