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 ">...



           

Je! umeipenda hii post?
Ndio            Hapana            Save post

Kama unahitaji kuuliza maswali Bofya hapa

Mwandhishi Tarehe 2023-10-19 Download PDF     Share On Facebook or Whatsapp Imesomwa mara 121


Download our Apps
👉1 Kitau cha Fiqh     👉2 kitabu cha Simulizi     👉3 Madrasa kiganjani     👉4 Kitabu cha Afya    

Post zifazofanana:-

PHP BLOG - somo la 6: Jinsi ya kutengeneza dashboard kwa ajili ya blog
katika post hii utajifunza jinsi ya kutengeneza ukurasa wa dashboard kwa ajili ya kutibti post Soma Zaidi...

PHP BLOG - somo la 8: Jinsi ya kufuta post kwenye database
katika post hii utajifunza jinsi ya kufuta post kwenye database. pia utajifunza jinsi ya kufuta picha kwenye server Soma Zaidi...

PHP - somo la 25: Jinsi ya kukusanya taarifa kutoka kwenye html form kwa kutumia php
Katika somo hili utajifunza jinsi ya kukusanya taarifa ambazo watu wamezijaza kwa kutumia fomu ya html. Kisha utajifunza jinsi ya kuzisoma hizo taarifa. Soma Zaidi...

PHP somo la 64: Jinsi ya kutengeneza database na kuingiza data kwa kuumia PDO
Katika somo hili utakwenda kujifunza jinsi ya kutumia PDO kutengeneza database, kuteneneza table na kuingiza data moja na zaidi ya moja. 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 31: Matumizi ya include() na require() function kwenye php
Katika somo hili utakwenda kujifunza jinsi ya kuandika function za PHP kama require() na iclude() Soma Zaidi...

PHP - somo la 38: Jinsi ya ku upload mafaili zaidi ya moja kwa kutumia PHP
katika somo hili utajifunza jinsi ya ku upload multiple file yaani mafaili mengi kwa wakati mmoja kwa kutumia PHP Soma Zaidi...

PHP BLOG - somo la 5: Jinsi ya kuandika code za PHP kwa ajili ya kuweka post kwenye blog
Katika ukurasa huu utakwenda kujifunz jinsi ya kuandika code za php kwa ajili ya kutuma post yetu kwenye blog. Soma Zaidi...

PHP somo la 49: utangulizi wa Object Oriented Programming katika PHP
Huu ni mwendelezo wa mafunzo ya PHP na hapa tunaaza rasmi advanced PHP. tutakwenda kuingia ndani zaidi kwenye PHP. Ni vyema kabla ya kuanza course hii ya advanced PHP uwe una uelewa wa kutosha kuhusu mafunzo yetu ya PHP. Soma Zaidi...

PHP - somo la 15: Jinsi ya kutengeneza table kwenye database kwa kutumia PHP
Katika somo hili utakwenda kujifunza jinsi ya kutumia PHP kutengeneza tabale kwenye database ya mysql . Soma Zaidi...

PHP - somo la 22: Kutafuta jumla, wastani na idani ya vitu kwenye database kw akutumia PHP
Katika somo hili utakwenda jifunza jinsi ya kuhesabu row kwenye database, kutafuta wastani wa taarifa kwenye database na kutafuta idadi yake. Soma Zaidi...

PHP somo la 60: namespace na matumizi yake kwenye PHP
Katika somo hili utakwendakujifunza concept ya namespaces na jinsi inavyosaidi kwenye OOP Soma Zaidi...