PHP Uložení souboru LOCK
AD MOB
Tato funkce smaže původní soubor a vytvoří nový.
Parametry jsou cesta k souboru a pole řádků.
Nakonec nastaví mod přístupu k souboru.
Parametry jsou cesta k souboru a pole řádků.
Nakonec nastaví mod přístupu k souboru.
/**
* Tato funkce smaže původní soubor a vytvoří nový.
* Parametry jsou cesta k souboru a pole řádků.
* Nakonec nastaví mod přístupu k souboru.
*
* @param string $fname
* @param array $poleVstup
*/
function createNewFile($fname, $poleVstup)
{ // BEGIN function createNewFile
if(file_exists($fname))unlink($fname);
$fp = fopen($fname, "a");
if (flock($fp, LOCK_EX)) { // do an exclusive lock
foreach ($poleVstup as $key=>$value) {
fwrite($fp, $value); //
}
flock($fp, LOCK_UN); // release the lock
} else {
echo "Couldn't lock the file !";
}
fclose($fp);
chmod($fname, 0777); // set CHMOD
} // END function createNewFile
/**
* fopen() modes
*/
r Read
r+ Read and write, prepend
w Write, truncate
w+ Read and write, truncate
a Write, append
a+ Read and write, append
Od verze PHP 5.1.0 lze k uložení souboru se zámkem využít i funkci file_put_contents
přičemž flag bude mít hodnotu LOCK_EX
int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] )
$file = "test.txt";
$content = "Some text which will put into file";
file_put_contents($file, $content, LOCK_EX);
77LW NO topic_id
AD
Další témata ....(Topics)
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'
Editace contextového menu a přidání položek do kontextového menu Notepad++
Konkrétně je to vyvolání nabídky pro změnu syntaxe v otevřeném souboru.
Postup:
- vybrat z horního menu
- Settings
- Edtit Context Menu
- Upravit soubor
- Zavřít a otevřít Notepad++
- Vyzkoušet funkci
Konkrétně je to vyvolání nabídky pro změnu syntaxe v otevřeném souboru.
Postup:
- vybrat z horního menu
- Settings
- Edtit Context Menu
- Upravit soubor
- Zavřít a otevřít Notepad++
- Vyzkoušet funkci
Před < Item odstraňte mezeru!!!!! Zde je to jen kvůli zobrazeni. Prolížeče mají tendenci kód převést na HTML.
< Item id="0"/><!-- moje -->
< Item FolderName="Language Syntax" MenuEntryName="Language" MenuItemName="CSS" ItemNameAs="Language CSS"/>
< Item FolderName="Language Syntax" MenuEntryName="Language" MenuItemName="HTML" ItemNameAs="Language HTML"/>
< Item FolderName="Language Syntax" MenuEntryName="Language" MenuItemName="JAVASCRIPT" ItemNameAs="Language JAVASCRIPT"/>
< Item FolderName="Language Syntax" MenuEntryName="Language" MenuItemName="PHP" ItemNameAs="Language PHP"/>
htaccess rady a zkušenosti
Testování kódu htaccess ZDEPříklady na jakpsatweb
Dokumentace na apache.org
Testování regexů
Komentar nesmi byt na stejnem radku, jako kod. Zde jsou komentare, na konci radku (vedle) prikazu, jen kvuli snadnejsimu pochopeni kodu.
RewriteCond string (regex1) # tento radek nebude fungovat, koment musi byt na samostatnem radku, nejlepe nad provadenym kodem.
# tak je to spravne, komentar na samostatnem radku a nejlepe nad ukolem
RewriteCond string (regex1)
RewriteRule dosáhne jen na regex předchozího RewriteCond!
RewriteCond string (regex1) # nedosahne
RewriteCond string (regex2)
RewriteRule (regex) %1 # v %1 bude regex2
Číslo za % udává, kolikátá skupina předchozího regexu v RewriteCond bude použita. %0 vezme vše ze všech skupin.
Pokud skupina neexistuje, tak se vypíše jako %N , kde N je číslo skupiny, která nebyla nalezena.
$1 číslo za $ udává kolikátá skupina regexu bude použita, ale platí jen pro RewriteRule z jeho vlastního regexu. $0 vezme všchny skupiny (group) regexu z RewriteRule.
RewriteCond může být několikrát za sebou, ale jakmile se jedna z těchto podmínek nesplní, tak se nesplní ani následující RewriteRule!
RewriteCond # podmínka nesplněna
RewriteCond # splněna
RewriteRule # se nevykoná, protože jedna z podmínek nebyla splněna
RewriteRule přísluší vždy k předchozímu - předchozí skupině RewriteCond. Následující RewriteRule už je samostatné viz příklad:
RewriteCond
RewriteRule # tohle reaguje na předchozí podmínku a vykoná se, když je podmínka splněna
RewriteRule # tohle už je samostatné a nebude brát ohled na podmínku - podmínky v předchozích řádcích.
Využití regexu, který bude vytvořen až v následujícím RewriteRule. Regex Back-Reference Availability
Date: 27.02.2020 - 11:11
For all browsers e.g. old IE 11 ....
<script>
var mbThreadOneRunning = false;
var mbThreadOneEnded = false;
var mbThreadTwoRunning = false;
var mbThreadTwoEnded = false;
// you can create more than one Thread
// setTimeout() used for running more Threads at once
var timeout_1 = setTimeout("ThreadOne()", 5000); // 5000 == 5 second
var timeout_2 = setTimeout("ThreadTwo()", 3000); //
function ThreadOne() {
mbThreadOneRunning = true;
alert("1. ThreadOne working!");
// working code here .............
mbThreadOneEnded = true;
clearTimeout(timeout_1);
}
function ThreadTwo() {
mbThreadTwoRunning = true;
alert("2. ThreadTwo working!");
// working code here .............
mbThreadTwoEnded = true;
clearTimeout(timeout_2);
}
var mInterval = setInterval("checkThread()", 1000); // 1000 ms == 1 second, you can put smaller value
function checkThread() {
if (mbThreadOneEnded == true) {
alert("1. checkThread() ThreadOne finish work! " + mbThreadOneEnded);
}
else if (mbThreadTwoEnded == true) {
alert("2. checkThread() ThreadTwo finish work! " + mbThreadTwoEnded);
}
if (mbThreadOneEnded && mbThreadTwoEnded) {
clearInterval(mInterval); // just to be sure
mbThreadOneEnded = false;
mbThreadTwoEnded = false;
alert("ThreadOne and ThreadTwo ended ");
}
}
</script>
Stáhněte si balíček MODU, který chcete používat ze stránek //www.phpbb.com/customise/db/modifications-1/
Baliček vybalte do adresáře a soubor install.xml otevřete v prohlížeči.
Postupujte dle instrukcí z install.xml
**VIDEO YOUTUBE
**VIDEO YOUTUBE
Baliček vybalte do adresáře a soubor install.xml otevřete v prohlížeči.
Postupujte dle instrukcí z install.xml
**VIDEO YOUTUBE
**VIDEO YOUTUBE
Editace: 18 10 2016
Počet článků v kategorii: 77
Url:php-ulozeni-souboru-lock
AD