Интернэт програмчлал
Лекц№3 Багш П.Баяр
*Файл нээх
*php болон бусад интернэт програмчлалын
хэлээр бичигдсэн кодуудыг скрипт гэж нэрлэдэг.
*Файл нээхэд fopen() функцийг ашиглана.
*Файлыг нээхийн өмнө файлаа ямар горимд
(уншихаар, бичихээр) нээхийг зааж өгөх
хэрэгтэй.
*Энэ функц нь 2, 3, 4 параметр авч болдог.
*Эхний аргумент нь нээх файлын нэр
*Хоёрдахь аргумент нь нээх горимыг заадаг.
*Авсан захиалгаа файлд бичиж хадгалдаг код
бичье.
*$file = fopen(‘Names.txt’, ‘w’);
<?php
$file = fopen('bb.txt','w');
fwrite($file,'Hello');
?>
4
*Файлын горим
Горим Горимын нэр Тайлбар
r Унших (read) Файлыг уншихаар нээнэ. Файлын эхнээс нь
уншина.
r+ Унших (read) Файлыг унших, бичихээр нээнэ. Файлын эхнээс
нь уншина.
w Бичих (write) Файлыг бичихээр нээнэ. Эхнээс нь бичнэ. Хэрэв
нээгдэж байгаа файл хоосон биш байвал уг
агуулгыг устгадаг. Хэрэв ийм файл байхгүй
байвал шинээр үүсгэнэ.
w+ Бичих (write) Файлыг унших, бичихээр нээнэ. Эхнээс нь
бичнэ. Хэрэв нээгдэж байгаа файл хоосон биш
байвал уг агуулгыг устгадаг. Хэрэв ийм файл
байхгүй байвал шинээр үүсгэнэ.
5
Горим Горимын
нэр
Тайлбар
x Болгоомжт
ой бичих
(cautious
write)
Файлыг бичихээр нээнэ. Эхнээс нь бичнэ.
Хэрэв ийм файл урьд нь байсан бол fopen
функц нь түүнийг нээхгүй false утга буцаах
ба PHP нь сануулгын мэдээлэл үүсгэнэ.
x+ Болгоомжт
ой бичих
(cautious
write)
Файлыг унших, бичихээр нээнэ. Эхнээс нь
бичнэ. Хэрэв ийм файл урьд нь байсан бол
fopen функц нь түүнийг нээхгүй false утга
буцаах ба PHP нь сануулгын мэдээлэл
үүсгэнэ.
a Нэмэх
(append)
Файлд өгөгдөл нэмэхээр нээнэ. Урьд нь
байгаа өгөгдлүүдийн араас залгаж бичнэ.
Хэрэв ийм файл байхгүй байсан бол
шинээр үүсгэнэ.
а+ Нэмэх
(append)
Файлд өгөгдөл нэмэхээр ба уншихаар
нээнэ. Урьд нь байгаа өгөгдлүүдийн араас
залгаж бичнэ. Хэрэв ийм файл байхгүй
байсан бол шинээр үүсгэнэ.
6
Горим Горимын
нэр
Тайлбар
b Хоѐртын
файл
(binary)
Файлын бусад горимтой хамт хэрэглэгддэг.
Хоѐртын болон текст файлуудыг ялгаж
үздэг үйлдлийн системд хоѐртын файл
нээхдээ хэрэглэнэ. Windows нь ялгадаг бол
UNIX төрлийн системүүд ялгаж үздэггүй.
PHP програмистууд вэбээ сервэр хооронд
зөөгдөх чадварыг нь нэмэгдүүлэхийн тулд
энэ тохиргоог үргэлж хэрэглэхийг зөвлөдөг.
Default утгаараа энэ тохиргоо сонгогдсон
байдаг.
t Текст файл
(text)
Файлын бусад горимтой хамт хэрэглэгддэг.
Зөвхөн Windows системд л хэрэглэнэ.
• Текст файл нь стандарт ascii код бүхий
тэмдэгтүүдийг агуулах чадвартай файл
юм. Энэ төрлийн файлуудыг ихэвчлэн
текст редактороор үздэг.
• жш: *.txt, *.ini, *.bat
• Хоѐртын файлд бүх төрлийн тэмдэгт
байж болдог. Энэ файлуудыг тусгай
зориулалтынх нь програмыг ашиглан
харьцдаг.
• жш: *.jpg, *.exe, *.mp3, *.doc, *.zip
*$file = fopen(names.txt’, ‘w’);
*Ингэж нээснээр зөвхөн нэг удаа нэг
л нэр бүртгэгдэх боломжтой болно.
Дараачийн нэр нь өмнөхөө дарна
гэсэн үг. Арай илүү дээр хувилбар
нь:
*$fp = fopen(‘names.txt’, ‘ab’);
*Хэрэв файл амжилттай нээгдвэл
файлын заагч нь $file хувьсагчид
олгогдох болно.
9
*Файлд бичих, файл хаах
*Файлд бичихдээ fwrite(a, b, c) функцийг
ашиглана.
*a: бичих файлын заагч
*b: бичих өгөгдөл
*c: бичих өгөгдлийн урт. Энэ утгыг зааж
өгөхгүй байсан ч болно.
*Жишээ:
*fwrite($fp, $data, strlen($data));
*Файлыг хаахдаа:
*fclose($fp);
<form action="index.php" method="post">
<input type="text" name="txt"><br>
<input type="submit" value="Insert">
</form>
<?php
if (isset($_POST['txt']))
{
$txt = $_POST['txt'];
if (!empty($txt)){
$file = fopen('name.txt','a');
fwrite ($file, $txt."n");
fclose($file);
$readin = file('name.txt');
foreach($readin as $fname)
{echo $fname.',';}
}
else {echo 'insert text'; } } ?>
*
*<?php
if (date("m") >= 3 && date("m") <= 5)
{ echo "<p>Now it's spring!</p>"; }
elseif (date("m") >= 6 && date("m") <= 8)
{ echo "<p>Now it's summer!</p>"; }
elseif (date("m") >= 9 && date("m") <= 11)
{ echo "<p>Now it's autumn!</p>"; }
else { echo "<p>Now is winter!</p>"; }
?>
*
<?php switch(date("w"))
{ case 1: echo "Now it's Monday"; break;
case 2: echo "Now it's Tuesday"; break;
case 3: echo "Now it's Wednesday"; break;
case 4: echo "Now it's Thursday"; break;
case 5: echo "Now it's Friday"; break;
case 6: echo "Now it's Saturday"; break;
default: echo "Now it's Sunday"; break; }
*
<?php
$x = 1;
while ($x <= 50)
{ echo "<p>This text is repeated 50
times</p>";
$x = $x + 1;
}
?>
*
<?php
for ($x=0; $x<=50; $x=$x+5)
{ echo '<p>variable $x is now = ' . $x .
'</p>';
}
?>
Lekts  3
Lekts  3

Lekts 3

  • 1.
  • 2.
    *Файл нээх *php болонбусад интернэт програмчлалын хэлээр бичигдсэн кодуудыг скрипт гэж нэрлэдэг. *Файл нээхэд fopen() функцийг ашиглана. *Файлыг нээхийн өмнө файлаа ямар горимд (уншихаар, бичихээр) нээхийг зааж өгөх хэрэгтэй. *Энэ функц нь 2, 3, 4 параметр авч болдог. *Эхний аргумент нь нээх файлын нэр *Хоёрдахь аргумент нь нээх горимыг заадаг. *Авсан захиалгаа файлд бичиж хадгалдаг код бичье. *$file = fopen(‘Names.txt’, ‘w’);
  • 3.
  • 4.
    4 *Файлын горим Горим Горимыннэр Тайлбар r Унших (read) Файлыг уншихаар нээнэ. Файлын эхнээс нь уншина. r+ Унших (read) Файлыг унших, бичихээр нээнэ. Файлын эхнээс нь уншина. w Бичих (write) Файлыг бичихээр нээнэ. Эхнээс нь бичнэ. Хэрэв нээгдэж байгаа файл хоосон биш байвал уг агуулгыг устгадаг. Хэрэв ийм файл байхгүй байвал шинээр үүсгэнэ. w+ Бичих (write) Файлыг унших, бичихээр нээнэ. Эхнээс нь бичнэ. Хэрэв нээгдэж байгаа файл хоосон биш байвал уг агуулгыг устгадаг. Хэрэв ийм файл байхгүй байвал шинээр үүсгэнэ.
  • 5.
    5 Горим Горимын нэр Тайлбар x Болгоомжт ойбичих (cautious write) Файлыг бичихээр нээнэ. Эхнээс нь бичнэ. Хэрэв ийм файл урьд нь байсан бол fopen функц нь түүнийг нээхгүй false утга буцаах ба PHP нь сануулгын мэдээлэл үүсгэнэ. x+ Болгоомжт ой бичих (cautious write) Файлыг унших, бичихээр нээнэ. Эхнээс нь бичнэ. Хэрэв ийм файл урьд нь байсан бол fopen функц нь түүнийг нээхгүй false утга буцаах ба PHP нь сануулгын мэдээлэл үүсгэнэ. a Нэмэх (append) Файлд өгөгдөл нэмэхээр нээнэ. Урьд нь байгаа өгөгдлүүдийн араас залгаж бичнэ. Хэрэв ийм файл байхгүй байсан бол шинээр үүсгэнэ. а+ Нэмэх (append) Файлд өгөгдөл нэмэхээр ба уншихаар нээнэ. Урьд нь байгаа өгөгдлүүдийн араас залгаж бичнэ. Хэрэв ийм файл байхгүй байсан бол шинээр үүсгэнэ.
  • 6.
    6 Горим Горимын нэр Тайлбар b Хоѐртын файл (binary) Файлынбусад горимтой хамт хэрэглэгддэг. Хоѐртын болон текст файлуудыг ялгаж үздэг үйлдлийн системд хоѐртын файл нээхдээ хэрэглэнэ. Windows нь ялгадаг бол UNIX төрлийн системүүд ялгаж үздэггүй. PHP програмистууд вэбээ сервэр хооронд зөөгдөх чадварыг нь нэмэгдүүлэхийн тулд энэ тохиргоог үргэлж хэрэглэхийг зөвлөдөг. Default утгаараа энэ тохиргоо сонгогдсон байдаг. t Текст файл (text) Файлын бусад горимтой хамт хэрэглэгддэг. Зөвхөн Windows системд л хэрэглэнэ.
  • 7.
    • Текст файлнь стандарт ascii код бүхий тэмдэгтүүдийг агуулах чадвартай файл юм. Энэ төрлийн файлуудыг ихэвчлэн текст редактороор үздэг. • жш: *.txt, *.ini, *.bat • Хоѐртын файлд бүх төрлийн тэмдэгт байж болдог. Энэ файлуудыг тусгай зориулалтынх нь програмыг ашиглан харьцдаг. • жш: *.jpg, *.exe, *.mp3, *.doc, *.zip
  • 8.
    *$file = fopen(names.txt’,‘w’); *Ингэж нээснээр зөвхөн нэг удаа нэг л нэр бүртгэгдэх боломжтой болно. Дараачийн нэр нь өмнөхөө дарна гэсэн үг. Арай илүү дээр хувилбар нь: *$fp = fopen(‘names.txt’, ‘ab’); *Хэрэв файл амжилттай нээгдвэл файлын заагч нь $file хувьсагчид олгогдох болно.
  • 9.
    9 *Файлд бичих, файлхаах *Файлд бичихдээ fwrite(a, b, c) функцийг ашиглана. *a: бичих файлын заагч *b: бичих өгөгдөл *c: бичих өгөгдлийн урт. Энэ утгыг зааж өгөхгүй байсан ч болно. *Жишээ: *fwrite($fp, $data, strlen($data)); *Файлыг хаахдаа: *fclose($fp);
  • 10.
    <form action="index.php" method="post"> <inputtype="text" name="txt"><br> <input type="submit" value="Insert"> </form>
  • 11.
    <?php if (isset($_POST['txt'])) { $txt =$_POST['txt']; if (!empty($txt)){ $file = fopen('name.txt','a'); fwrite ($file, $txt."n"); fclose($file); $readin = file('name.txt'); foreach($readin as $fname) {echo $fname.',';} } else {echo 'insert text'; } } ?>
  • 12.
    * *<?php if (date("m") >=3 && date("m") <= 5) { echo "<p>Now it's spring!</p>"; } elseif (date("m") >= 6 && date("m") <= 8) { echo "<p>Now it's summer!</p>"; } elseif (date("m") >= 9 && date("m") <= 11) { echo "<p>Now it's autumn!</p>"; } else { echo "<p>Now is winter!</p>"; } ?>
  • 13.
    * <?php switch(date("w")) { case1: echo "Now it's Monday"; break; case 2: echo "Now it's Tuesday"; break; case 3: echo "Now it's Wednesday"; break; case 4: echo "Now it's Thursday"; break; case 5: echo "Now it's Friday"; break; case 6: echo "Now it's Saturday"; break; default: echo "Now it's Sunday"; break; }
  • 14.
    * <?php $x = 1; while($x <= 50) { echo "<p>This text is repeated 50 times</p>"; $x = $x + 1; } ?>
  • 15.
    * <?php for ($x=0; $x<=50;$x=$x+5) { echo '<p>variable $x is now = ' . $x . '</p>'; } ?>