PHP get variable type php
php bývá vyčítano, že proměnné jsou typově nejednoznačné. To je sice pravda, ale php má funkci, která vrátí typ proměnné v dané části kodu.
$var = 10;
// funkce gettype vrací retezec s nazvem typu
// tak, jak jej vydi prekladac pri linkovani kodu
$s = gettype($var); // $s == 'integer'
$var = 'some text';
$s = gettype($var); // $s == 'string'
$var = 10.1;
$s = gettype($var); // $s == 'double'
77LW NO topic_id
AD
Další témata ....(Topics)
Toogle DIV javascript example code:
Jak skrýt, nebo zobrazit kontejner DIV:Nezapomeňte přiřadit DIVu ID, aby k němu bylo možno přistupovat pomocí getElementById a vše fungovalo i v jiných prohlížečích (Opera, Firefox, Google Chrome) a ne jen v Internet Exploreru.
<div id="idSomeDiv"> text div </div>
<input type="button" size="200" value="Skryj-zobraz"
onclick="var dH = document.getElementById('idSomeDiv');
if(dH.style.visibility == 'hidden') {
dH.style.visibility = 'visible';
} else {
dH.style.visibility = 'hidden';
}">
Pokud chceme vytvořit soubor, jehož obsah bude čten, jako UTF-8 UNICODE stačí vstupní string nechat projít funkcí utf8_encode.
Pokud pak například text souboru použijeme v php scriptu v kódování UTF-8, text souboru bude správně zobrazen.
$fHnd = fopen($newName, "w");
$row = utf8_encode('řčšě');
fwrite($fHnd, $row."\r\ n");
fclose($fHnd);
Textarea selection - získání pozice karety kurzoru.
// FOR Gecko Browser selectionStart / selectionEnd selection length
function getPos(){
if (typeof document.getElementById('idTextarea').selectionStart != 'undefined') {
var nPosCursor = document.getElementById('idTextarea').selectionStart;
var nEndPos = document.getElementById('idTextarea').selectionEnd;
return nPosCursor;
}
return 0; // or -1
}
// source by javascript-array.com/guides/javascript_faq/
//Internet Explorer 4+, Mozilla/Gecko/Firefox
function getCaretPos(obj)
{
obj.focus();
if(obj.selectionStart) return obj.selectionStart; //Gecko
else if (document.selection) //Internet Explorer
{
var sel = document.selection.createRange();
var clone = sel.duplicate();
sel.collapse(true);
clone.moveToElementText(obj);
clone.setEndPoint('EndToEnd', sel);
return clone.text.length;
}
return 0;
}
Jak můžeme získat chyby na htm html stránce, které se projeví u uživatele v prohlížeči.
Ukážeme si příklad, který odešle zprávu o tom, že stránka je o 100px šiřší, jak uživatelova CLIENTAREA ( to, co vidí uživatel ze stránky) prohlížeče a také, že stránka nemá nastaven charset na UTF-8
Kód sestává ze javascriptu a php scriptu, který bude na serveru ukládat chybová hlášení.
Ukážeme si příklad, který odešle zprávu o tom, že stránka je o 100px šiřší, jak uživatelova CLIENTAREA ( to, co vidí uživatel ze stránky) prohlížeče a také, že stránka nemá nastaven charset na UTF-8
Kód sestává ze javascriptu a php scriptu, který bude na serveru ukládat chybová hlášení.
Nejdříve javascript
Tento script vložíme až na konec htm html (nebo inc php šablony kde je ukončení ) stránky mezi tagy /body a /html
</body>
<script type="text/javascript">
var s = new String();
var bUtf8 = false;
var m = document.getElementsByTagName("META");
for(var i = 0; i < m.length; i++){
s = m[i].content;
s = s.toLowerCase();
var nP = s.indexOf('charset');
var nPutf = s.indexOf('utf-8');
if(nP != (-1) && nPutf != (-1))
bUtf8 = true;
}
var httpRequestMy;
var sIE = "", sFF = "";
var nClientW = (parseInt(document.body.clientWidth));
var nScrollW = (parseInt(document.body.scrollWidth));
var nRozdil = nScrollW - nClientW;
if(nRozdil > 100 || bUtf8 == false){
// IE/zbytek sveta
if (window.ActiveXObject) {
httpRequestMy = new ActiveXObject("Microsoft.XMLHTTP");
sIE = "-IExplorer-";
} else {
httpRequestMy = new XMLHttpRequest();
sFF = "-Firefox-and-others-";
}
var d = new Date();
var url = "//myweb.com/stat/error.php?mess=<?php echo $_SERVER [SCRIPT_NAME];?>-pageWidth-"
+ nScrollW.toString() + "---clientWidth-" + nClientW.toString()
+ "-date-" + d.toDateString()+ "-" + d.toTimeString() + sFF + sIE;
if(bUtf8 == false)
url = "//myweb.com/stat/error.php?mess=<?php echo $_SERVER [SCRIPT_NAME];?>-UTF-8-false";
httpRequestMy.open("GET", url, true);
httpRequestMy.onreadystatechange= function () {processRequest(); } ;
httpRequestMy.send(null);
}
else {
//alert(nRozdil);
}
/****************/
function processRequest() {
if (httpRequestMy.readyState == 4) {
if(httpRequestMy.status == 200) {
var response = httpRequestMy.responseText;
if (response == 'EMPTY') {
alert('empty');
}
else {
//alert('OK');
}
}
}
else {
// alert("Error page loading "
// + httpRequestMy.status +":"+ httpRequestMy.statusText);
}
}
</script>
</html>
error.php může obsahovat takový kód
<?php
function vytvorNovyAzapisDoSouboru($fname, $poleVstup)
{ // BEGIN function vytvorNovyAzapisDoSouboru
if(file_exists($fname))unlink($fname);
$fp = fopen($fname, "a");
if (flock($fp, LOCK_EX)) { // do an exclusive lock
foreach ($poleVstup as $key=>$value) {
if(strlen($value)>5)
fwrite($fp, $value."
"); // D, d M Y
}
flock($fp, LOCK_UN); // release the lock
} else {
echo "Couldn't lock the file !";
}
fclose($fp);
chmod($fname, 0777);
} // END function vytvorNovyAzapisDoSouboru
$mess = $_GET['mess'];
$poleVstup = array();
if(file_exists('err_mess.txt')){
$poleVstup = file('err_mess.txt');
}
array_push($poleVstup, $mess);
//print_r($poleVstup);
vytvorNovyAzapisDoSouboru('err_mess.txt', $poleVstup);
?>
$country[0] = "cz"
$country[1] = "sk"
$country[2] = "de"
$country[3] = "uk"
$country[4] = "fr"
// this do same
$country[] = "cz"
$country[] = "sk"
$country[] = "de"
$country[] = "uk"
$country[] = "fr"
// or
$country = array('cz','sk','de','uk','fr');
// get array items count
$length = count($country);
for($i=0;$i<$length;$i++){
print $country[$i].'<br>';// cz sk de uk fr
}
// or like this
$country[50] = 'ca';
$country[10] = 'fr';
$country[20] = 'us'
// now country will index 51
$country[] = 'ru';
// or
$country = array('5'=>'cz','sk','de','uk','fr');
/*
Array
(
[5] => cz
[6] => sk
[7] => de
[8] => uk
[9] => fr
)
*/
// you can do this
$country["cz"] = 1571;
$country["sk"] = 1572;
$country["de"] = 1573;
$country["uk"] = 1574;
$country["fr"] = 1575;
print $country["uk"]; // 1574
// print all items key and value
foreach ($country as $key => $value){
print $key; // cz, sk, de, uk, fr
print $value; // 1571, 1572, 1573, 1574, 1575
}
Editace: 18 10 2016
Počet článků v kategorii: 77
Url:php-get-variable-type-php