image

PHP - somo la 39: Jinsi ya kutengeneza mafaili na mafolda kwenye server kwa kutumia PHP

Katika somo hili utakwenda kujifunza jinsi ya kuzungumza na server ili kutengeneza mafaili, mafolda, kufuta na ku edit kwa kutumia PHP.

Katika somo hili utakwenda kujifunza jnsi ya kucheza na mafaili.hapa utajifunza kutengeneza mafaili kwenye server kwa kutumia php. Pia utajifunza kuyafuta na ku edit. Zaidi utajifunza kuhusu kuyalinda mafaili haya, na tutajifunza mengi zaidi. Somo hili kwakuwa nalo ni lefu nitaligawa kwenye vipengele:-

 

  1. Kutengeneza folda kwenye server

  2. Kutengeneza faili

  3. Kupata orodha ya mafaili kwenye folda

  4. Kufuta folda

  5. Kufuta faili

  6. Ku edit faili

  7. Kusoma faili

 

  1. Kutenfeneza folda: 

Tunapozungumzia server sio kitu ambacho utaweza ku access kama ilivyo kompyuta yako. Hivyo tutahitajika tujuwe lugha ya kuzungumza na server ili iweze kufanya kile ambacho tunakitaka. Somo hili utaweza kuliona la kawaida ila lina umuhimu mkubwa sana kwa programa.

 

Ili kutengeneza folda tunatumia function inayoitwa mkdir(). Function hii itakuwa na parameta moja ambayo ni ya lazima ambayo ni jina la hilo folda. Kwa mfano unaweza kusema unataka kutengeneza folda linaloitwa bongoclass. Hivyo utaweka hivi mkdir(‘bongoclass’). Unaweza ku echo hiyo function ama kufanya uanavyotaka 

 

echo mkdir('bongoclass');

?>

 

Pia unaweza kutumia if else ili uweze kupata majibu kama faili limetengenezwa ama laa. Kufanya hivi tutatumia alama ya ! kuamaanisha kama function imefeli iseme failed vinginevyo iseme created

 

if (!mkdir('mafunzo')){

   echo "failed";

}else echo "created";

 

  1. Kutengeneza sub folder

Ili uweze kutengeneza subfolder utatumia alama ya / mbele ya folda lako. Kwa mfanoi folda letu linaitwa ,afunzo na tunataka kutengeneza folda linaloitwa php ndani ya folda mafunzo. Hivyo tutaweka alama ya slash kisha jina la sub folda letu mfano mkdir(mafunzo/php)

 

if (!mkdir('mafunzo/php')){

   echo "failed";

}else echo "created";

Hivyo hivyo unaweza kuongeza folda lingine ndani ya subfolda. Mfano

 

if (!mkdir('mafunzo/php/level-3/lesson-1')){

   echo "failed";

}else echo "created";

 

  1. Kutengeneza faili

Ili kutengeneza mafaili kwenye server tutatumia function ya php inayoitwa fopen()  au kwa kutumia fwrite(). Mfano tunatka kutengeneza faili linaloitwa bongoclass.html, bongo.txt, bongoit.mp3. Hivyo tutatumia function hii kufanya hivyo.

 

Function hii ya kutengeneza mafaili ina para,meter mbili ambazo ni lazima. Moja ni jina la faili lenye extension yake, na la pili ni namna ambavyo hilo faili litatumika. Kwa mfano ukiweka W hiyo ni kwa ajili ya kuandika faili tu, nyingine ni kama:-

  1. w. Kuandika faili tu, hutengeneza faili kama halipo

  2. r . kusoma faili tu, husoma kuanzia mwanzo

Nyingine utazipata hapa

 

Kiutaratibu unatakiwa ufanye hivi, kwanza utatumia fopen() ili kufunguiwa faili kisha utatumia fwrite() ili kuandika taarifa kwenye faili, kisha utatumia fclose() ili kufunga hilo faili ulilolifunguwa. Kuwa makini sana ni jambo linalisisitizwa kufunga faili lolote baada ya kulitumia.

 

Pia kuna functio nyingine ya die() ni kama tulivyotumia function hii kwenye database. Hivyo hapa napo endapo code zitashindwa kufunguwa hilo file lamda pengine halipo basi itastop. Wacha tuine mifano hapo chini:-

 

Mfano 1:

 

echo fopen("upload/bongoclass.html""w");

echo fopen("upload/bongo.txt""w");

echo fopen("upload/bongoit.mp3""w");

?>

 

Sasa utaona ukifunguwa hayo mafaili hayana data ndani yake. Hivyo sasa ni wakati wa kutumia fwrite() ili kuandika data kwenye hayo mafaili. Sasa tutakwenda lkutengeneza mafaili mengine matatu ambayo tutaandika data. Tutayapa jina web.html, somo.txt, funzo.doc.

 

 

 

Kwanza tutatengeneza variable za kuwakilisha function za kutemnheneza hayo mafaili kisha ndipo tutakwenda kuweka data kwenye mafaili hayo. Kwa kuwa mfaili hayo yapo kwenye format tofauti basi kila m moja hapo itabidi awe na variable yake na data zake.

 

Mfano 2:

 

$a = fopen("upload/bongoclass.html""w");

$b = fopen("upload/bongo.txt""w");

$c = fopen("upload/bongoit.doc""w");

 

echo fwrite($a,"

haloo bongoclass

");

 

echo fwrite($b,"Habari ya muda huu Bongoclass");

echo fwrite($c,"Hili ni faili la PDF kutoka bongoclass");

 

fclose($a);

fclose($b);

fclose($c);

 

 

?>

Utaona hapo ukirun kuna namba zinatokea. Hiyo ni idadi ya character zilizopo kwenye hilo faoli. Kwa namna hiyo unaweza kutengeneza faiuli na kuweka data hata kutoka kwenye database. Unaweza pia kuweka hayo mafaili kwenye folda unalotaka. Hata kwenye subfolda.

 

Hatuwa inayofuata ni kuyasoma hayo mafaili. Sasa katika kusoma data kuna namna nyingi hapa nitakwenda kukutajia namna 4, ambazo ni kusoma lote kwa pamoja kwa kutumia fread() au kusoma msatri wa kwanza tu. hapa tutatumia fgets(), namna ya pili ni kusoma mstari wa mwisho hapa tutatumia feof(), na namna ya mwisho ni kusoma mistari yote mmoja baada ya mwingine. Hapa tutatumia !feof() hii ni sawa na hiyo ya ,mwanzo ila tofauti ni kjuwa hii tutaifanyia programming.

 

Sasa tutatumia faili moja katika mfano huu. Tutaongeza mstari wa data ili tuweze kupata mistari kadhaa. Sasa tutakachokifanya ni ku edit moja ya mafaili yetu. Ku edit maana yake data ambazo zipo hatuziondoi ila tunaongeza nyingine. Ili tuweze ku edit tutatakiwa tutumie read mode ya “a”. Katika mfano unaofuata pia tutatumia function ya die() ili ku stop kama kuna kitu hakipo sawa. Pia nitatumia alama ya   ili kuruka mstari. Hii ni sawa na ,kutumia
kwenye html

Mfano 3:

 

$file = fopen("upload/bongo.txt""a"or die("kuna tatizo");

$txt1 = "karibu bongoclass ";

fwrite($file, $txt1);

$txt2 = "upate elimu bure ";

fwrite($file, $txt2);

$txt3 = "website yetu ni www.bongoclass.com ";

fwrite($file, $txt3);

$txt4 = "wasiliana nasi muda wowote ";

fwrite($file, $txt4);

fclose($file);

?>

Sasa kwa kuwa tunalo faili letu ambalo lipo hapo lina mistari 6 na kila msatari tgu aona nini kimeandikwa. Sasa tunakwenda kusoma mistari hiyo kwa kutumia php. Utaweza kufanya hivi pia kwa mafaili mengine.

 

Kabla ya kusoma hayo mafaili kuna kitu nataka ukifahamu kwanza. Nacho ni kujuwa ukubwa wa faili. Tulisha jifunza kuhusu filesize kwenye POST sasa hapa tunakwenda kujuwa ukubw awa faili kw akutum ia filesize(). Hii itatupa ukubwa wa faili kwa byte. Hivyo kwanza nataka tujuwe hilo faili letu hapo juu lina ukubwa gani?

Mfano 4:

 

$file = fopen("upload/bongo.txt""r"or die("Unable to open file!");

echo filesize("upload/bongo.txt");

fclose($file);

?>

Sasa tunakwenda kusoma faili letu kwa kiutu mia fread(). Function hii itabeba parameta 2 am bazo n i jina la faili ambalo limesha funguliwa hapa tutatumia fopen, na parameta ya pili  ni filesize. Hivyo itakuwa hivi

 

Mfano 5:

 

$file = fopen("upload/bongo.txt""r"or die("Unable to open file!");

echo fread($file,filesize("upload/bongo.txt"));

fclose($file);

?>

Sasa tunakwenda kusoma mstari wa kwanza tu. hapa tutatumia fgets(). Function hii nayo itabeba parameta moja ambayo ni jina la faili ambalo limesha finguliwa.

 

$file = fopen("upload/bongo.txt""r"or die("Unable to open file!");

echo fgets($file);

fclose($file);

?>

Kuna changamoto utaipata kwenye fread() ni kuwa faili limefunguka lote. Na mistari imeungaa tofauti na tulipotengeneza tuliruka mstari kwa . Sasa kutatuwa cgangamoto hiyo tutatumia function hii feof() hii kazi yake ni kuangalia kama faili limefika mwsho. Hivyo basi tutasoma mstari baada ya mstari mpaka mwisho. Hivyo kila m stari utakaa mahala pake.

 

Tutahitajika hapa kutumia condition statement, ili tuweze kufanya looping kutolka mwanzo mpaka mwisho. Hapa tutatumia while loop. Ni matumaini yangu kuwa unafahamu kuhusu while loop. feof() hii huangalia je tumefika mwisho. Sasa nitafanya hivi !foef() hii ni negative yake, hivyo tutasema endapo hatujafika mwsho basi iendelee kusoma faili letu mstari baada ya mstari. Hivyo tutaitumia tena fgets().

 

Mfano 6:

 

$file = fopen("upload/bongo.txt""r"or die("Unable to open file!");

while(!feof($file)) {

   echo fgets($file) . "
"
;

}

fclose($file);

?>

Wacha nikuekekeze namna nyingiune ya kusoma faili, namna hii ni kusoma faili kwa character mojo moja, au herufi moja moja. Yaani inasoma character mpoja, kisha inayofuata. Na kila  moja inakaa kwenye mstari wake kama uta break line. Functio itakayotumika hapa ni fgetc().

Mfano 7:

 

$file = fopen("upload/bongo.txt""r"or die("Unable to open file!");

while(!feof($file)) {

   echo fgetc($file) . "
"
;

}

fclose($file);

?>

Ila endapo utaondoa hiyo
faili litakuwa na muonekano ule ule tuliouzoea. Ila sentensi hazitajipanga kwe nye mistari ila zitakuwa kama ni mstari mmoja.

 

Sasa je kama ninataka kusoma baadhi tu ya mistari. Wa mfano faili letu hapo juu tunataka kusoma mistari mitatu ya kwanza. Hivyo basi kwanza itatakiwa kujuwa idadi ya mistari iliyopo kwenye hilo faili. Kufanya hivi tutatujmia coutn(file(()) function. Utaona hapo ni function ya count() ambao ndani yake kuna function ya file(). Sasa hiyo ya file() ndio ambayo inahesabiwa. Yenyewe ina irray kulingana na idadi ya mistari. Kwa mfano faili la mistari 6 itakuwa na array 5. Kumbuka array huhesabiwa kuanzia 1.Kisha baada ya hapo tutatumia condition ">...



Kama unahitaji kuuliza maswali Bofya hapa





           

Je! umeipenda hii post?
Ndio            Hapana            Save post

Rajabu Tarehe 2024-05-10 14:53:23 Download PDF     Share On Facebook or Whatsapp Imesomwa mara 183


Sponsored links
👉1 kitabu cha Simulizi     👉2 Madrasa kiganjani     👉3 Kitabu cha Afya     👉4 Kitau cha Fiqh    

Post zifazofanana:-

PHP BLOG - somo la 11: Jinsi ya kutumia prepared statement
Katika somo hili utajifnza jinsi ya kufanya prepared statement kama njia ya kuzuia sql ingection kwenye PHP blog Soma Zaidi...

PHP - somo la 16: Jinsi ya kufuta tabale na database kwa kutumia php
Katika somo hili utajifunza jinsi ya kufuta table ya databse kwa kutumia PHP. Pia utajifunza jinsi ya kututa database yeto Soma Zaidi...

PHP - somo la 23: Jinsi ya kutumia condition statement kwenye database kwa kutumia PHP
Katika somo hili utakwenda kuona namna ya kutuia if else kwenye data zilizopo kwenye database kwa kutumia PHP Soma Zaidi...

PHP somo la 59: static property kwenye PHP
Katika somo hili utakwend kujifunza kuhusu static property na jnsi inavyotumika Soma Zaidi...

PHP somo la 53: class inheritance kwenye PHP Object Oriented Programming
Katika somo hili utakwenda kujifunza kuhusu class inheritance kwenye object oriented programming. Soma Zaidi...

PHP somo la 70: jinsi ya kutuma email yenye html, picha na attachment
Katika somo hili utakwenda kujifunza jinsi ya kutuma email ambayo ina HTML, pia utajifunza kutuma email yenye picha na attachment nyinginezo kama pdf Soma Zaidi...

PHP - somo la 48: Jinsi ya kuzuia hacking kwenye sytem ya kujisajili na ku login
Katika somo hili utajifunza jinsi ambavyo utaweza kutengeneza mfumo wa kuisajiki na ku login, kisha kuangalia usalama wa mfumo kwa kuzuia sql injection. Soma Zaidi...

PHP - somo la 20 : Jinsi ya kufuta na ku update data kwenye database kwa kutumia PHP
Katika somo hili utakwenda kujifunza jinsi ya ku update na kufuta data kwenye database kwa kutumia PHP Soma Zaidi...

PHP somo la 58: static method kwenye PHP
Katika somo hili utakwenda kujifunza kuhusu static method na inavtotumika kwenye OOP Soma Zaidi...

PHP somo la 65: Jinsi ya kusoma data kwenye database kwa kutumia PDO
Katika somo hili utakwenda kujifunza jinsi ya kusoma data kwenye database kwa kutumia PDO. Soma Zaidi...

PHP - somo la 35: Jinsi ya ku upload mafaili kwa kutumia PHP
Katika somo hili utakwenda kujifunza jinsi ya ku upload mafaili kwenye server kwa kutumia PHP Soma Zaidi...

PHP - somo la 44: Nini cURL na ni yapi matumizi yake?
Katika somo hilibutajifunza maana ya cURL pamoja na matumini yake Soma Zaidi...