Cyflwyniad i PHP

Sefydlu amgylchedd datblygu PHP

Mae PHP (Hypertext Preprocessor) yn iaith raglennu ffynhonnell agored boblogaidd sy'n ddelfrydol ar gyfer datblygu gwe. Fe'i defnyddir yn aml ar y cyd â thechnolegau eraill i adeiladu tudalennau gwe deinamig a rhyngweithiol, megis HTML, CSS, a JavaScript.

Bydd y paent preimio hwn yn ymdrin â hanfodion PHP ac yn cynnig trosolwg o'i nodweddion a'i alluoedd hanfodol. Byddwn yn trafod pynciau fel:

  • Sefydlu amgylchedd datblygu
  • Cystrawen sylfaenol a mathau o ddata
  • Newidynnau a chysonion
  • Strwythurau rheoli (os/arall, dolenni, ac ati)
  • Swyddogaethau
  • Arrays
  • Gweithio gyda ffurflenni a data GET/POST
  • Cysylltu â chronfeydd data
  • Gweithio gyda ffeiliau a chyfeiriaduron
  • Gwall wrth drin a dadfygio
  • Arferion gorau ac ystyriaethau diogelwch
Dysgwch y pethau sylfaenol yn gyflym heb Cyflwyniad i PHP

Bydd gennych ddealltwriaeth gref o PHP a byddwch yn gallu adeiladu sgriptiau syml a thudalennau gwe erbyn diwedd y llyfr hwn. Fe welwch nodweddion a galluoedd mwy soffistigedig wrth i chi barhau i astudio a gweithio gyda PHP, sy'n eich galluogi i adeiladu apiau gwe mwy cymhleth a deinamig.

Cyn plymio i PHP, mae'n bwysig sefydlu amgylchedd datblygu a fydd yn caniatáu ichi redeg sgriptiau PHP. Gallwch ddefnyddio amgylchedd datblygu lleol neu wasanaeth cynnal sy'n gydnaws â PHP. Yn dilyn hynny, gallwch ddechrau trwy astudio gramadeg sylfaenol PHP, sy'n cynnwys newidynnau, cysonion, mathau o ddata, a strwythurau rheoli.

Nesaf, byddwch yn dysgu am swyddogaethau, sy'n eich galluogi i grwpio cod cysylltiedig gyda'i gilydd a'i gwneud hi'n haws ailddefnyddio a threfnu'ch cod. Mae swyddogaethau yn elfen hanfodol ym mhob iaith raglennu ar gyfer adeiladu cod hylaw y gellir ei hailddefnyddio.

Arrays hefyd yn bwnc pwysig i'w feistroli wrth weithio gyda PHP. Mae araeau yn caniatáu ichi storio a thrin gwerthoedd lluosog mewn un newidyn. Gellir defnyddio araeau i storio a thrin data, megis rhestr o eitemau neu wybodaeth bersonol defnyddiwr.

Agwedd bwysig arall ar ddatblygu gwe yw gweithio gyda ffurflenni a data GET/POST. Mae PHP yn darparu sawl swyddogaeth adeiledig sy'n ei gwneud hi'n hawdd cyrchu a phrosesu data a gyflwynir gan ffurflenni. Cysylltu i gronfeydd data a gweithio gyda ffeiliau a chyfeiriaduron yn gysyniadau allweddol eraill i'w deall wrth weithio gyda PHP.

Yn olaf, trin gwallau a dadfygio yn sgiliau hanfodol i'w cael wrth weithio gyda PHP. Mae PHP yn darparu nifer o swyddogaethau a lluniadau adeiledig sy'n eich galluogi i drin a dadfygio gwallau a rhybuddion a all ddigwydd wrth i'ch cod gael ei weithredu.

Mae trin gwallau yn sgil hanfodol yn PHP

Ar ben hynny, wrth ddelio â PHP, mae diogelwch yn ffactor hollbwysig. Mae gan PHP nifer o swyddogaethau adeiledig a dulliau i'ch cynorthwyo i sicrhau eich cais ar-lein a'i ddiogelu rhag risgiau diogelwch nodweddiadol.

Er mwyn dyfnhau eich dealltwriaeth o PHP ymhellach, mae hefyd yn bwysig archwilio a gweithio gyda rhai poblogaidd Fframweithiau PHP a llyfrgelloedd. Fframweithiau fel Laravel, CodeIgniter, a Symffoni rhoi set o ddulliau a dosbarthiadau parod a all eich helpu i gyflymu datblygiad, gwella trefniadaeth cod, a gwneud gweithio gyda chronfeydd data a chydrannau eraill yn symlach.

Yn ogystal, mae hefyd yn syniad da i archwilio a dysgu sut i ddefnyddio poblogaidd CMS (Systemau Rheoli Cynnwys) wedi'u hadeiladu ar PHP megis WordPress, Joomla, a Drupal. Mae gan y CMSs hyn gymuned enfawr a gweithgar, sy'n golygu y gallwch ddod o hyd i lawer o adnoddau, tiwtorialau ac ategion i wella'ch sgiliau.

Yn olaf, mae hefyd yn hanfodol cael y wybodaeth ddiweddaraf am y datblygiadau diweddaraf a thueddiadau yn y Cymuned PHP. Dilynwch flogiau, fforymau, a chyfrifon cyfryngau cymdeithasol sy'n canolbwyntio ar ddatblygiad PHP, ac ystyriwch fynychu cynadleddau a chyfarfodydd i gysylltu â datblygwyr eraill a dysgu am offer a thechnegau newydd.

Mae'r gymuned PHP yn un fawr.

Agwedd bwysig arall ar ddatblygiad PHP yw'r defnydd o Rhaglennu Gwrthrychol (OOP) cysyniadau a phatrymau dylunio. Mae OOP yn caniatáu ichi gynrychioli gwrthrychau byd go iawn yn eich cod, a all helpu gyda strwythur cod a chynnaladwyedd. Mae hefyd yn syniad da astudio a chymhwyso patrymau dylunio cyffredin fel y Model-View-Rheolwr (MVC) a phatrymau Singleton, a allai eich helpu i drefnu eich cod yn fwy rhesymegol ac effeithlon.

Ar ben hynny, mae'n bwysig deall y pethau sylfaenol gweinyddwyr gwe a sut maen nhw'n gweithio gyda PHP. Apache ac Nginx yw'r gweinyddwyr gwe mwyaf cyffredin a ddefnyddir gyda PHP, a gall deall sut maen nhw'n gweithio eich helpu i ddatrys problemau a gwneud y gorau o'ch cod PHP. Er mwyn cychwyn yn gyflym rydym yn argymell defnyddio XAMPP - sy'n gosod Apache, MySQL a PHP i chi.

Ystyriaeth arwyddocaol arall wrth ddelio â PHP yw perfformiad. Oherwydd bod PHP yn iaith wedi'i dehongli, gall fod yn arafach nag ieithoedd a luniwyd fel C neu C++. Fodd bynnag, mae nifer o ddulliau a thechnolegau, megis caching, caching opcode, a gellir defnyddio proffilio i gynyddu effeithlonrwydd cod PHP.

I grynhoi, mae PHP yn iaith raglennu hyblyg a chryf a ddefnyddir yn gyffredin mewn datblygu gwe. Mae'r erthygl hon yn rhoi cyflwyniad trylwyr i PHP, gan gynnwys ei hanfodol Nodweddion a galluoedd. I feistroli PHP, mae angen ymchwilio i fframweithiau a llyfrgelloedd, gweithio gyda CMSs poblogaidd, aros yn gyfredol ar y datblygiadau a'r tueddiadau diweddaraf yn y gymuned PHP, defnyddio cysyniadau a phatrymau dylunio OOP, deall hanfodion gweinyddwyr gwe a sut maen nhw'n rhyngweithio â PHP , ac ystyried technegau optimeiddio perfformiad. Mae hefyd yn hanfodol ymarfer a gwella'ch galluoedd yn gyson trwy adeiladu a gweithio ar brosiectau. O ran PHP, p'un a ydych chi'n newbie neu'n ddatblygwr profiadol, mae rhywbeth newydd i'w ddysgu a'i wella bob amser.

Sefydlu amgylchedd datblygu

I sefydlu amgylchedd datblygu ar gyfer PHP, bydd angen i chi osod gweinydd gwe, system rheoli cronfa ddata, ac amser rhedeg PHP.

  1. Gosod gweinydd gwe: Y gweinyddwyr gwe a ddefnyddir amlaf ar gyfer PHP yw Apache a Nginx. Gallwch lawrlwytho a gosod unrhyw un o'r gweinyddwyr gwe hyn ar eich peiriant lleol.
  2. Gosod system rheoli cronfa ddata: Mae PHP yn gweithio'n dda gydag amrywiaeth o gronfeydd data, ond MySQL yw'r un a ddefnyddir amlaf. Gallwch chi lawrlwytho a gosod MySQL ar eich peiriant lleol.
  3. Gosodwch amser rhedeg PHP: Mae PHP yn iaith sgriptio ochr y gweinydd, felly mae angen ei gosod ar eich gweinydd gwe. Gallwch chi lawrlwytho'r fersiwn ddiweddaraf o PHP o'r wefan swyddogol a'i osod ar eich gweinydd gwe.
  4. Ffurfweddu'r gweinydd gwe: Ar ôl i chi osod y gweinydd gwe, bydd angen i chi ei ffurfweddu i weithio gyda PHP. Bydd hyn yn golygu golygu ffeiliau cyfluniad y gweinydd i ychwanegu'r modiwl PHP a gosod y cysylltiadau ffeil cywir.
  5. Profwch eich gosodiad: Unwaith y byddwch wedi cwblhau'r camau uchod, gallwch chi brofi'ch gosodiad trwy greu ffeil PHP gyda sgript syml a'i chyrchu trwy'ch gweinydd gwe. Os yw popeth yn gweithio'n iawn, dylech weld allbwn y sgript yn eich porwr.
  6. (dewisol) Amgylchedd Datblygu: Mae'n well gan rai datblygwyr ddefnyddio amgylchedd datblygu fel XAMPP, WAMP, neu LAMP. Mae'r amgylcheddau hyn yn bwndelu Apache, MySQL, a PHP gyda'i gilydd ac yn ei gwneud hi'n hawdd sefydlu a rhedeg gweinydd datblygu ar eich peiriant lleol.

Mae'n werth nodi y gall y camau uchod amrywio yn dibynnu ar y system weithredu a'r fersiwn rydych chi'n ei ddefnyddio, dylech ddilyn y cyfarwyddiadau ar gyfer eich system benodol.

Yn hytrach na sefydlu'r amgylchedd datblygu eich hun rydym yn argymell ei ddefnyddio XAMPP.

Dysgwch yn union sut i sefydlu popeth trwy ddefnyddio ein canllaw amgylchedd datblygu cam wrth gam.

Cystrawen sylfaenol a mathau o ddata

Mae gan PHP gystrawen sy'n debyg i gystrawen llawer o ieithoedd rhaglennu eraill, sy'n ei gwneud hi'n hawdd ei dysgu i ddatblygwyr sy'n gyfarwydd ag ieithoedd eraill o'r blaen.

  1. Cystrawen Sylfaenol:
<?php
  // This is a single-line comment
  /*
  This is a
  multi-line comment
  */
  $x = 5; // this is a variable
  echo "Hello World!"; // this is a statement
?>
  • Mae cod PHP wedi'i amgylchynu gan dagiau, y bwriedir iddynt ei wahaniaethu oddi wrth ieithoedd eraill megis HTML neu JavaScript. Y rhagosodiad tagiau are?php a?>, fodd bynnag os yw tagiau byr wedi'u galluogi yn eich gosodiadau php, gallwch eu defnyddio yn lle hynny.
  • Mae sylwadau yn PHP yn debyg i sylwadau mewn ieithoedd eraill, maent yn dechrau gyda slaes blaen dwbl (//) ar gyfer sylwadau un llinell, neu gyda /* a */ ar gyfer sylwadau aml-linell.
  • Mae datganiadau PHP yn cael eu gwahanu gan hanner colon (;) a diwedd pob datganiad.
  • Newidynnau yn PHP yn cael eu dynodi gan arwydd doler ($), a rhaid iddynt ddechrau gyda llythyren neu danlinellu a dim ond yn cynnwys llythrennau, rhifau a thanlinellau.
  1. Mathau Data:
  • Mae PHP yn cefnogi sawl un mathau o ddata, Gan gynnwys:
    • Cyfanrifau: Rhifau cyfan, megis -5, 0, a 42.
    • fflotiau: Rhifau â phwyntiau degol, megis 3.14159.
  • Strings: Dilyniannau o gymeriadau, fel “Helo Fyd!” neu “123”.
  • Booleans: Gwerthoedd gwir neu anghywir.
  • Arrays: Casgliad o werthoedd, a all fod o unrhyw fath o ddata.
  • Gwrthrychau: Math o ddata arbennig sy'n cynrychioli enghraifft o ddosbarth.
  • Adnoddau: Math o ddata arbennig sy'n cynrychioli adnoddau allanol, fel cysylltiad cronfa ddata.

Mae PHP yn newid mathau o ddata yn awtomatig yn ôl yr angen, ond mae'n hanfodol deall a defnyddio'r gwahanol fathau o ddata yn effeithiol i osgoi ymddygiad annisgwyl. I bennu'r math o newidyn, defnyddiwch y swyddogaethau var dump() neu argraffwch r().

<?php
  $num = 5;
  $str = "Hello";
  $bool = true;
  $arr = array(1,2,3);
  var_dump($num); // int(5)
  var_dump($str); // string(5) "Hello"
  var_dump($bool); // bool(true)
  var_dump($arr); // array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3) }
?>

Mae'n werth nodi hynny llinynnau yn PHP gellir ei fynegi gyda dyfyniadau sengl (') neu ddyfyniadau dwbl (“), gyda dyfyniadau sengl ychydig yn gyflymach ac angen llai o gof. Ni fydd dyfynodau sengl yn dosrannu dilyniannau dianc, fodd bynnag bydd dyfynodau dwbl.

<?php
  $str1 = 'Hello World!';
  $str2 = "Hello World!";
  echo $str1; // Hello World!
  echo $str2; // Hello World!
?>

I grynhoi, mae gwybod y gystrawen sylfaenol a'r mathau o ddata yn PHP yn hanfodol ar gyfer cynhyrchu cod effeithlon a chynaliadwy. Gallwch greu newidynnau, trin data, a gweithredu strwythurau rheoli sylfaenol fel dolenni a datganiadau amodol gan ddefnyddio'r ddealltwriaeth hon.

Newidynnau a chysonion

<?php
  $x = 5; // variable x is assigned the value 5
  $y = "Hello"; // variable y is assigned the value "Hello"
  $x += 2; // variable x is now 7
  $y .= " World"; // variable y is now "Hello World"
?>

Yn ogystal â newidynnau, mae PHP yn cynnal cysonion, sy'n union yr un fath â newidynnau ond ni ellir eu haddasu unwaith y rhoddir gwerth i gysonyn. Cwnstabl yn cael eu diffinio gyda'r ffwythiant diffinio (), sy'n cymryd dwy ddadl: enw'r cysonyn a'i werth.

<?php
define("PI", 3.14);
echo PI; // Outputs 3.14
define("MY_NAME", "John Doe");
echo MY_NAME; // Outputs John Doe

Mae'n werth nodi bod cysonion yn achos-sensitif yn ddiofyn, ond gallwch eu gwneud yn ansensitif o ran achosion trwy basio'r drydedd ddadl fel un sy'n wir yn y swyddogaeth ddiffinio.

<?php
define("MY_NAME", "John Doe", true);
echo my_name; // Outputs John Doe

I gloi, mae newidynnau a chysonion yn syniadau pwysig ym mhob iaith raglennu, ac mae eu hangen ar gyfer storio a thrin data mewn sgriptiau PHP. Gall gwerthoedd newidynnau gael eu hailbennu, ond mae cysonion yn cadw'r un gwerth ar ôl eu diffinio. Mae cysonion yn caniatáu ichi ddatgan gwerthoedd yr ydych yn rhagweld y byddant yn aros yn gyson yn ystod oes eich sgript, gan wneud eich cod yn fwy darllenadwy a hylaw.

Strwythurau rheoli (os/arall, dolenni, ac ati)

Defnyddir strwythurau rheoli yn PHP i reoli llif gweithredu eich cod, ac maent yn cynnwys datganiadau os/arall, dolenni, a datganiadau switsh.

  1. Datganiadau Os/Arall: Y strwythur rheoli mwyaf sylfaenol yw'r datganiad if, sy'n eich galluogi i weithredu bloc o god os bodlonir amod penodol. Gallwch hefyd ddefnyddio'r datganiad arall i weithredu bloc arall o god os na chaiff yr amod ei fodloni.
<?php
  $x = 5;
  if ($x > 0) {
    echo "x is greater than 0";
  } else {
    echo "x is less than or equal to 0";
  }

Gallwch hefyd ddefnyddio'r datganiad elseif i gadwyno amodau lluosog gyda'i gilydd, a'r gweithredwr teiran ( ? : ) fel llaw fer ar gyfer datganiadau syml os/arall.

<?php
  $x = 5;
  $y = 10;
  if ($x > $y) {
    echo "x is greater than y";
  } elseif ($x < $y) {
    echo "x is less than y";
  } else {
    echo "x is equal to y";
  }
  echo $x > 0 ? "x is positive" : "x is non-positive";
  1. Dolenni: Mae yna sawl math o ddolenni yn PHP, gan gynnwys ar gyfer dolenni, tra bod dolenni, a dolenni gwneud-tra. Mae'r rhain yn caniatáu ichi ailadrodd bloc o god nifer penodol o weithiau, neu hyd nes y bodlonir amod penodol.
<?php
  for ($i = 0; $i < 5; $i++) {
    echo $i;
  }
  $x = 0;
  while ($x < 5) {
    echo $x;
    $x++;
  }
  $x = 0;
  do {
    echo $x;
    $x++;
  } while ($x < 5);
  1. Newid datganiadau: Mae datganiad switsh yn eich galluogi i wirio gwerth newidyn yn erbyn achosion lluosog. Pan ddarganfyddir cyfatebiaeth, gweithredir y cod sy'n gysylltiedig â'r achos hwnnw. Os na chanfyddir cyfatebiaeth, gweithredir yr achos rhagosodedig os yw'n bodoli.
<?php
  $x = 2;
  switch($x) {
    case 0:
      echo "x is 0";
      break;
    case 1:
      echo "x is 1";
      break;
    case 2:
      echo "x is 2";
      break;
    default:
      echo "x is not 0, 1 or 2";
  }

I grynhoi, strwythurau rheoli yn PHP yn cael eu defnyddio i reoleiddio llif gweithrediad eich cod. Os/defnyddir datganiadau eraill i wneud dyfarniadau amodol, dolenni i ailadrodd bloc o god, a switshis gosodiadau i gymharu gwerth newidyn yn erbyn sefyllfaoedd amrywiol. Gall deall y strwythurau rheoli hyn a'u defnyddio'n briodol eich helpu i adeiladu cod mwy effeithlon a chynaliadwy.

Swyddogaethau

Mae swyddogaethau yn elfen hanfodol ym mhob iaith raglennu ar gyfer adeiladu cod hylaw y gellir ei hailddefnyddio. Yn PHP, mae swyddogaethau'n caniatáu ichi drefnu bloc o god a'i enwi, y gellir ei alw wedyn lawer gwaith trwy gydol eich sgript.

I ddiffinio swyddogaeth yn PHP, rydych chi'n defnyddio allweddair y swyddogaeth, ac yna enw'r swyddogaeth, set o gromfachau, a bloc o god wedi'i amgáu mewn braces cyrliog. Rhaid i enw'r ffwythiant ddechrau gyda llythyren neu danlinellu, a chynnwys llythrennau, rhifau a thanlinellau yn unig.

<?php
  function myFunction() {
    echo "Hello World!";
  }
  myFunction(); // Outputs "Hello World!"

Gall ffwythiannau hefyd gymryd un neu fwy o ddadleuon fel mewnbwn, sy'n cael eu cyflenwi i'r ffwythiant mewn cromfachau pan y'i gelwir. O fewn y swyddogaeth, gellir defnyddio'r dadleuon hyn i wneud cyfrifiannau neu wneud dyfarniadau.

<?php
  function myFunction($x, $y) {
    echo $x + $y;
  }
  myFunction(3, 5); // Outputs 8

Gall swyddogaethau hefyd ddychwelyd gwerth gan ddefnyddio'r datganiad dychwelyd. Gellir defnyddio hwn i ddychwelyd canlyniad a cyfrifiad neu werth newidyn.

<?php
  function myFunction($x, $y) {
    return $x + $y;
  }
  $result = myFunction(3, 5);
  echo $result; // Outputs 8

Yn PHP, gellir diffinio swyddogaethau y tu mewn neu'r tu allan i ddosbarth, pan ddiffinnir swyddogaeth y tu mewn i ddosbarth fe'i gelwir yn ddull, a gall gael mynediad at briodweddau'r dosbarth.

Gellir defnyddio swyddogaethau hefyd i adeiladu cau, a elwir hefyd yn swyddogaeth ddienw, y gellir ei gadw mewn newidyn ac yna ei gyflenwi fel dadl i swyddogaeth arall neu ei ddychwelyd fel gwerth.

<?php
$my_closure = function($x) { return $x * 2; };
echo $my_closure(5); // Outputs 10

I grynhoi, mae swyddogaethau yn offeryn pwerus yn PHP sy'n eich galluogi i grwpio bloc o god gyda'i gilydd a'i enwi, y gellir wedyn ei alw sawl gwaith trwy gydol eich sgript. Mae swyddogaethau hefyd yn caniatáu ichi gymryd paramedrau mewnbwn, dychwelyd gwerthoedd, a chreu cau, gan ei gwneud hi'n haws ysgrifennu cod y gellir ei gynnal a'i ailddefnyddio. Gellir ysgrifennu swyddogaethau hefyd fel dulliau o fewn dosbarth, sy'n eich galluogi i grynhoi rhesymeg a phriodoleddau dosbarth.

Dysgwch fwy am swyddogaethau ein herthygl Swyddogaethau yn PHP.

Arrays

Mae arae yn strwythur data yn PHP sy'n eich galluogi i storio a threfnu grŵp o elfennau. Gall yr eitemau hyn fod o sawl math, fel cyfanrifau, llinynnau, neu hyd yn oed araeau eraill. Rhoddir mynegai unigryw i bob elfen arae, a ddefnyddir i gyrchu a thrin yr elfen. Gellir ffurfio araeau yn PHP gan ddefnyddio'r dull arae() neu'r cystrawen cromfachau sgwâr []. Gallant hefyd gael eu haddasu gan ddefnyddio dulliau adeiledig fel didoli (), cyfrif (), a implode () (). Mae araeau yn agwedd annatod ar arsenal pob datblygwr PHP ar gyfer storio a thrin llawer iawn o ddata.

Darllenwch fwy am araeau yn ein Canllaw terfynol i Araeau PHP.

Gweithio gyda ffurflenni a data GET/POST

Wrth weithio gyda ffurflenni yn PHP, mae'r data a gyflwynir gan y defnyddiwr fel arfer yn cael ei anfon at y gweinydd gan ddefnyddio'r dull GET neu POST. Mae'r dull GET yn atodi data'r ffurflen i ddiwedd yr URL, tra bod y dull POST yn anfon y data fel rhan o'r corff cais HTTP.

Gellir defnyddio'r newidyn byd-eang $_GET i gael data a ddarparwyd gan ffurflen sy'n defnyddio'r dechneg GET. Mae'r newidyn hwn yn arae cysylltiadol sy'n cynnwys parau gwerth allweddol data'r ffurflen. Er enghraifft, os yw ffurflen yn cynnwys maes mewnbwn o'r enw “name” a bod y defnyddiwr yn mewnbynnu “John Smith,” efallai y cewch y canlyniad trwy ddefnyddio $_GET['name'].

I gyrchu'r data a gyflwynir gan ffurflen gan ddefnyddio'r dull POST, gallwch ddefnyddio'r newidyn byd-eang $_POST. Mae'r newidyn hwn yn gweithio yn yr un ffordd â $_GET, ond fe'i defnyddir i gyrchu data a gyflwynwyd trwy'r dull POST.

Mae'n bwysig ddilysu a glanweithio y data cyn ei ddefnyddio, i atal gwendidau diogelwch megis chwistrelliad SQL ac ymosodiadau sgriptio traws-safle (XSS).

Yn ogystal, gallwch ddefnyddio newidyn $_REQUEST i gael mynediad at ddata a gyflwynwyd trwy ddull GET a POST.

Unwaith y bydd gennych fynediad i'r data, gallwch ei ddefnyddio i gyflawni gweithredoedd amrywiol megis mewnosod y data mewn cronfa ddata, anfon e-bost, neu arddangos neges i'r defnyddiwr.

I gloi, mae ffurflenni a data GET/POST yn hanfodol i ddatblygiad gwe PHP. Mae deall sut i gyfathrebu â nhw yn elfen hanfodol o ddatblygu apiau ar-lein deinamig a rhyngweithiol.

Cysylltu â chronfeydd data

Yn PHP, mae sawl ffordd o gysylltu â chronfa ddata. Un o'r ffyrdd mwyaf poblogaidd yw defnyddio'r mysqli estyniad, sy'n sefyll am MySQL Wedi'i Wella. Mae estyniad MySQLi yn darparu rhyngwyneb gwrthrych-ganolog ar gyfer gweithio gyda chronfeydd data MySQL. I gysylltu â chronfa ddata gan ddefnyddio MySQLi, bydd angen i chi ddefnyddio'r mysqli_connect() swyddogaeth. Mae'r swyddogaeth hon yn cymryd tri pharamedr: enw gwesteiwr gweinydd y gronfa ddata, yr enw defnyddiwr, a'r cyfrinair. Unwaith y byddwch wedi cysylltu â'r gronfa ddata, gallwch ddefnyddio swyddogaethau MySQLi eraill i weithredu ymholiadau, nôl data, ac ati.

Cronfa ddata boblogaidd yn PHP yw MySQL

Dyma enghraifft o sut i gysylltu â chronfa ddata MySQL gan ddefnyddio MySQLi yn PHP:

<?php
$hostname = "localhost";
$username = "root";
$password = "";

$conn = mysqli_connect($hostname, $username, $password);

if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>

Mae'r estyniad PDO (PHP Data Objects) yn dechneg gyffredin arall i gysylltu â chronfa ddata yn PHP. Mae PDO yn darparu rhyngwyneb cyson ar gyfer rhyngweithio â sawl math o gronfa ddata, megis MySQL, PostgreSQL, a SQLite. Rhaid i chi ddefnyddio'r llunydd PDO() i gysylltu â chronfa ddata gan ddefnyddio PDO. Mae'r adeiladwr hwn yn derbyn tri pharamedr: DSN y gronfa ddata (enw ffynhonnell ddata), yr enw defnyddiwr, a'r cyfrinair.

<?php
$dsn = "mysql:host=localhost;dbname=testdb";
$username = "root";
$password = "";

try {
    $conn = new PDO($dsn, $username, $password);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully"; 
    }
catch(PDOException $e)
    {
    echo "Connection failed: " . $e->getMessage();
    }
?>

Mae'n bwysig cofio y dylid bob amser ystyried arferion gorau diogelwch fel defnyddio datganiadau parod ac osgoi chwistrelliad SQL wrth weithio gyda chronfeydd data yn PHP.

Parhewch i ddarllen am MySQL yn ein Cysylltwch â chanllaw cronfa ddata MySQL.

Gweithio gyda ffeiliau a chyfeiriaduron

Mae yna amrywiol swyddogaethau adeiledig yn PHP sy'n eich galluogi i weithredu gyda ffeiliau a chyfeiriaduron.

I ddarllen cynnwys ffeil, gallwch ddefnyddio'r file_get_contents() swyddogaeth. Mae'r swyddogaeth hon yn cymryd llwybr y ffeil fel paramedr ac yn dychwelyd cynnwys y ffeil fel llinyn. Dyma enghraifft o sut i ddarllen cynnwys ffeil:

<?php
$file = 'example.txt';
$content = file_get_contents($file);
echo $content;
?>

Gellir defnyddio'r dull ffeil rhoi cynnwys() i ysgrifennu at ffeil. Mae'r swyddogaeth hon yn derbyn dau baramedr: llwybr y ffeil a'r cynnwys i'w ysgrifennu i'r ffeil. Dyma enghraifft o ysgrifennu i ffeil:

<?php
$file = 'example.txt';
$data = "Hello World!";
file_put_contents($file, $data);
?>

I wirio a oes ffeil yn bodoli, gallwch ddefnyddio'r file_exists() swyddogaeth. Mae'r swyddogaeth hon yn cymryd llwybr y ffeil fel paramedr ac yn dychwelyd TRUE os yw'r ffeil yn bodoli a FALSE os na wna. Dyma enghraifft o sut i wirio a oes ffeil yn bodoli:

<?php
$file = 'example.txt';
if (file_exists($file)) {
    echo "The file exists.";
} else {
    echo "The file does not exist.";
}
?>

Mae practis meddygol mkdir() gellir defnyddio dull i greu cyfeiriadur newydd. Mae'r dull hwn yn derbyn y llwybr cyfeiriadur fel dadl ac yn creu'r cyfeiriadur gyda'r llwybr hwnnw. Dyma enghraifft o greu cyfeiriadur newydd:

<?php
$dir = 'example_dir';
mkdir($dir);
?>

Mae practis meddygol yn rm() gellir defnyddio dull i ddileu cyfeiriadur. Mae'r dull hwn yn derbyn llwybr y cyfeiriadur fel mewnbwn ac yn dileu'r cyfeiriadur gyda'r llwybr a gyflenwir. Dyma enghraifft o sut i gael gwared ar gyfeiriadur:

<?php
$dir = 'example_dir';
rmdir($dir);
?>

Wrth ryngweithio â ffeiliau a chyfeiriaduron yn PHP, mae'n hanfodol cofio y dylid sefydlu dull trin gwallau addas i reoli unrhyw anawsterau a all ddod i'r amlwg, megis ffeil heb ei chanfod, caniatâd wedi'i wrthod, ac ati.

Gwall wrth drin a dadfygio

Cyfeirir at y broses o gofnodi a delio â phroblemau sy'n digwydd wrth weithredu sgript PHP fel trin gwallau yn PHP. Mae gan PHP weithdrefnau a strwythurau trin gwallau amrywiol, megis y datganiadau ceisio dal ar gyfer rheoli eithriadau a'r sbardun gwall() swyddogaeth ar gyfer cynhyrchu problemau a ddiffinnir gan ddefnyddwyr.

Mae dadfygio yn PHP yn cyfeirio at y broses o ddarganfod a thrwsio gwallau mewn sgript PHP. Mae PHP yn darparu nifer o offer ar gyfer dadfygio, gan gynnwys y error_reporting() swyddogaeth ar gyfer rheoli lefel yr adrodd am wallau, a'r var_dump() ac print_r() swyddogaethau ar gyfer arddangos cynnwys newidynnau. Yn ogystal, mae gan lawer o amgylcheddau datblygu integredig (IDEs) a golygyddion testun ymarferoldeb dadfygio integredig y gellir ei ddefnyddio i gamu trwy'r cod, gosod torbwyntiau, ac archwilio newidynnau.

Mae'n werth nodi hefyd bod PHP yn cynnwys gweinydd gwe datblygu y gellir ei ddefnyddio i weithredu a phrofi rhaglenni PHP heb fod angen gweinydd gwe llawn. Mae hyn yn arbennig o ddefnyddiol ar gyfer dadfygio gan ei fod yn dangos unrhyw broblemau sy'n codi yn y porwr.

Yn gyffredinol, dylid trin gwallau a dadfygio yn ddigonol yn eich rhaglenni PHP. Gall hyn eich helpu i ganfod a datrys gwallau cyn iddynt greu problemau mawr, yn ogystal â gwneud cynnal a diweddaru eich cod yn haws.

Arferion gorau ac ystyriaethau diogelwch

Mae yna nifer o arferion gorau ac ystyriaethau diogelwch i gadw mewn cof wrth weithio gyda PHP. Mae rhai o'r rhai pwysicaf yn cynnwys:

Peth pwysig arall i'w ystyried yw diogelwch.
  1. mewnbwn dilysu: Mae'n bwysig dilysu holl fewnbwn defnyddwyr i sicrhau ei fod yn cwrdd â'r fformat a'r math disgwyliedig. Gall hyn helpu i atal gwendidau cyffredin megis SQL chwistrelliad a sgriptio traws-safle (XSS).
  2. Defnyddiwch ddatganiadau parod: Wrth weithio gyda Cronfeydd data, mae'n bwysig defnyddio datganiadau parod i amddiffyn rhag ymosodiadau chwistrellu SQL. Mae datganiadau a baratowyd yn caniatáu i chi wahanu data oddi wrth yr ymholiad SQL, fel nad yw mewnbwn defnyddiwr yn cael ei fewnosod yn uniongyrchol i'r ymholiad.
  3. Allbwn dianc: Wrth arddangos mewnbwn defnyddiwr ar dudalen we, mae'n bwysig dianc rhag unrhyw nodau arbennig yn iawn i atal ymosodiadau XSS. Gellir gwneud hyn gan ddefnyddio'r htmlspecialchars() swyddogaeth neu debyg.
  4. Defnyddiwch swyddogaethau diogelwch: Mae gan PHP sawl swyddogaeth adeiledig a all helpu i wella diogelwch, megis password_hash() ar gyfer storio cyfrineiriau hashed, a random_bytes() ar gyfer cynhyrchu haprifau diogel cryptograffig.
  5. Diweddaru meddalwedd: Mae'n bwysig cadw PHP ac unrhyw feddalwedd arall a ddefnyddir yn eich rhaglen yn gyfredol er mwyn manteisio ar atgyweiriadau a chlytiau diogelwch.
  6. Osgoi defnyddio newidynnau byd-eang: Gall defnyddio newidynnau byd-eang arwain at faterion diogelwch a gwneud y cod yn anodd ei ddeall a'i gynnal. Yn lle hynny, defnyddiwch ddadleuon swyddogaeth, priodweddau dosbarth, a newidynnau lleol eraill i drosglwyddo data o gwmpas.
  7. Defnyddiwch fframwaith PHP: Gall defnyddio fframwaith PHP sydd wedi'i hen sefydlu eich helpu i wella'ch trefniadaeth cod a hefyd ychwanegu mwy o nodweddion diogelwch fel amddiffyniad CSRF a dilysu Mewnbwn.
  8. Osgoi defnyddio gwybodaeth sensitif yn y codebase: Mae'n arfer gwael storio gwybodaeth sensitif fel manylion cronfa ddata ac allweddi API yn y cod sylfaen. Argymhellir defnyddio newidynnau amgylchedd i'w storio.

Trwy ddilyn yr arferion gorau a'r ystyriaethau diogelwch hyn, gallwch helpu i amddiffyn eich cais PHP rhag gwendidau cyffredin a chadwch eich cod yn ddiogel.

Holi ac Ateb

C: Beth yw PHP?

A: Mae PHP yn dalfyriad ar gyfer Hypertext Preprocessor. Mae'n iaith sgriptio ochr y gweinydd a ddefnyddir ar gyfer creu tudalennau gwe deinamig. Fe'i defnyddir yn aml mewn cyfuniad â HTML, CSS, a JavaScript i greu gwefannau rhyngweithiol ac ymatebol.

C: Pa fath o wefannau y gellir eu hadeiladu gan ddefnyddio PHP?

A: Gellir defnyddio PHP i greu ystod eang o wefannau, gan gynnwys gwefannau e-fasnach, systemau rheoli cynnwys, llwyfannau cyfryngau cymdeithasol, a mwy. Mae rhai enghreifftiau poblogaidd o wefannau a adeiladwyd gan ddefnyddio PHP yn cynnwys WordPress, Facebook, a Wikipedia.

C: Sut mae PHP yn gweithio?

A: Gweithredir cod PHP ar y gweinydd, ac anfonir yr HTML canlyniadol i borwr gwe y cleient i'w arddangos. Pan fydd defnyddiwr yn gofyn am dudalen sy'n cynnwys cod PHP, mae'r cod PHP yn cael ei weithredu gan y gweinydd cyn i'r dudalen gael ei hanfon at y cleient. Mae hyn yn caniatáu i gynnwys deinamig gael ei gynhyrchu ar y hedfan, yn seiliedig ar fewnbwn defnyddiwr neu amodau eraill.

C: Beth yw prif nodweddion PHP?

A: Mae rhai o brif nodweddion PHP yn cynnwys:

  • Cefnogaeth i gronfeydd data lluosog, gan gynnwys MySQL, SQLite, a PostgreSQL.
  • Cefnogaeth ar gyfer rhaglennu gwrthrych-ganolog.
  • Swyddogaethau adeiledig ar gyfer gweithio gyda nhw llinynnau, araeau, ac eraill mathau o ddata.
  • Cefnogaeth ar gyfer trin ffeiliau, gan gynnwys y gallu i ddarllen ac ysgrifennu ffeiliau ar y gweinydd.
  • Cefnogaeth ar gyfer cwcis a sesiynau, y gellir eu defnyddio i storio data ar borwr gwe'r cleient.
  • Cefnogaeth ar gyfer anfon a derbyn e-bost.

C: Sut mae gosod PHP ar fy nghyfrifiadur?

A: Mae'r broses osod ar gyfer PHP yn dibynnu ar eich system weithredu. Ar Windows, gallwch chi lawrlwytho fersiwn ddeuaidd o PHP o'r wefan swyddogol a'i osod fel unrhyw feddalwedd arall. Ar Mac a Linux, gallwch osod PHP gan ddefnyddio rheolwr pecyn fel Homebrew neu apt-get. Yn ogystal, bydd angen gweinydd gwe arnoch hefyd fel Apache neu Nginx a system rheoli cronfa ddata fel MySQL i redeg PHP ar eich cyfrifiadur.

C: Sut mae rhedeg sgript PHP?

A: I redeg sgript PHP, bydd angen i chi gael gweinydd gwe wedi'i osod ar eich cyfrifiadur. Unwaith y bydd gennych weinydd gwe yn rhedeg, gallwch osod eich sgript PHP yn y cyfeiriadur priodol (fel arfer y ffolder “htdocs” neu “public_html”) ac yna llywio i'r sgript yn eich porwr gwe. Bydd y gweinydd yn gweithredu'r cod PHP ac yn dychwelyd yr HTML canlyniadol i'ch porwr.

C: Sut ydw i'n debug sgript PHP?

A: Mae yna sawl ffordd i ddadfygio sgript PHP. Un dull cyffredin yw defnyddio’r datganiad “adlais” i argraffu gwerthoedd newidynnau a chanlyniadau cyfrifiadau ar wahanol adegau yn y sgript. Yn ogystal, gallwch ddefnyddio'r swyddogaeth "var_dump()" i argraffu cynnwys arae neu wrthrych. Mae offer eraill ar gyfer dadfygio PHP yn cynnwys Xdebug, sy'n darparu nodweddion mwy datblygedig fel olion pentwr a sylw cod, a'r swyddogaeth “error_log()”, sy'n ysgrifennu negeseuon gwall i ffeil log.

C: Beth yw'r arferion gorau ar gyfer ysgrifennu cod PHP?

A: Mae rhai arferion gorau ar gyfer ysgrifennu cod PHP yn cynnwys:

  • Defnyddio mewnoliad cywir a gofod gwyn i wneud y cod yn fwy darllenadwy.
  • Defnyddio enwau newidyn a ffwythiannau disgrifiadol.
  • Defnyddio sylwadau i egluro pwrpas y cod ac unrhyw algorithmau cymhleth.
  • Defnyddio swyddogaethau i drefnu'ch cod a'i wneud yn haws ei ailddefnyddio.
  • Defnyddio dosbarthiadau a gwrthrychau i drefnu'ch cod a manteisio ar raglennu sy'n canolbwyntio ar wrthrychau.
  • Glanweithio mewnbwn defnyddwyr i atal gwendidau diogelwch fel chwistrelliad SQL.

C: Beth yw'r camgymeriadau cyffredin a wneir gan ddatblygwyr PHP?

A: Mae rhai camgymeriadau nodweddiadol a wneir gan ddatblygwyr PHP fel a ganlyn:

  • Peidio â diheintio mewnbwn defnyddwyr yn iawn, a all arwain at wendidau diogelwch fel chwistrelliad SQL.
  • Peidio â thrin gwallau ac eithriadau yn iawn, a all arwain at ymddygiad annisgwyl a chwilod.
  • Peidio â chau cysylltiadau cronfa ddata a dolenni ffeiliau yn iawn, a all arwain at ollwng adnoddau.
  • Peidio â threfnu cod yn iawn gyda swyddogaethau a dosbarthiadau, a all wneud y cod yn anodd ei gynnal a'i ddeall.
  • Peidio â phrofi'r cod yn iawn, a all arwain at fygiau a materion cydnawsedd.
  • Peidio â chadw i fyny â'r fersiwn ddiweddaraf o PHP, a all arwain at golli allan ar nodweddion newydd a diweddariadau diogelwch.
  • Peidio â optimeiddio'r cod ar gyfer perfformiad, a all arwain at amseroedd llwytho araf a defnydd uchel o adnoddau.

Ymarferion

  1. Sut ydych chi'n sefydlu amgylchedd datblygu ar gyfer PHP ar beiriant Windows?
  2. Beth yw'r gystrawen sylfaenol ar gyfer sgript PHP?
  3. Pa fathau o ddata sydd ar gael?
  4. Sut ydych chi'n datgan a chychwyn newidyn?
  5. Sut ydych chi'n datgan cysonyn?
  6. Sut ydych chi'n defnyddio strwythurau rheoli (os, ar gyfer, tra, ac ati)?
  7. Sut ydych chi'n creu ac yn galw swyddogaeth?
  8. Sut ydych chi'n gweithio gydag araeau?
  9. Sut ydych chi'n trin data GET a POST?
  10. Sut ydych chi'n cysylltu â chronfa ddata MySQL?
  11. Sut ydych chi'n gweithio gyda ffeiliau a chyfeiriaduron?
  12. Sut ydych chi'n delio â gwallau a dadfygio?

Atebion:

  1. I sefydlu amgylchedd datblygu ar gyfer PHP ar beiriant Windows, mae angen i chi osod gweinydd gwe (fel Apache neu IIS), PHP, a chronfa ddata (fel MySQL neu MariaDB). Gallwch ddefnyddio pecyn fel XAMPP neu WAMP i osod y tair cydran yn hawdd.
  2. Mae'r gystrawen sylfaenol ar gyfer sgript PHP i ddechrau . Mae cod PHP yn cael ei weithredu ar y gweinydd a gellir ei fewnosod o fewn cod HTML.
  3. Mae'r mathau o ddata sydd ar gael yn PHP yn cynnwys llinynnau, cyfanrifau, fflotiau, booleans, araeau, a gwrthrychau.
  4. I ddatgan a chychwyn newidyn yn PHP, defnyddiwch y symbol $ ac yna enw'r newidyn, a rhowch werth iddo gan ddefnyddio gweithredwr yr aseiniad (=). Enghraifft: $name = "John";
  5. I ddatgan cysonyn yn PHP, defnyddiwch y swyddogaeth diffinio (). Y paramedr cyntaf yw enw'r cysonyn a'r ail baramedr yw'r gwerth. Enghraifft: diffinio ("DP", 3.14);
  6. Yn PHP, mae strwythurau rheoli yn cynnwys os, arall, elseif, ar gyfer, foreach, tra, a gwneud-tra. Cânt eu defnyddio i reoli llif rhaglen, a gallant gynnwys amodau a datganiadau.
  7. I greu swyddogaeth yn PHP, defnyddiwch allweddair y swyddogaeth ac yna enw'r swyddogaeth, a chynhwyswch y cod i'w weithredu o fewn braces cyrliog. I alw ffwythiant, defnyddiwch enw'r ffwythiant ac yna cromfachau. Enghraifft: cyfarch ffwythiant() { adlais “Helo”; } cyfarch();
  8. Yn PHP, gellir creu araeau gan ddefnyddio'r ffwythiant arae() neu drwy ddefnyddio'r nodiant braced sgwâr. Gellir cyrchu elfennau gan ddefnyddio'r enw arae a rhif mynegai. Gellir defnyddio swyddogaethau arae fel didoli (), cyfrif (), a implode () i drin araeau.
  9. Mae data GET yn cael ei basio trwy'r URL a gellir ei gyrchu gan ddefnyddio'r arae $ _GET, tra bod data POST yn cael ei basio trwy'r corff cais a gellir ei gyrchu gan ddefnyddio'r arae $ _POST.
  10. I gysylltu â chronfa ddata MySQL yn PHP, defnyddiwch yr estyniad mysqli neu PDO. Mae'r ffwythiant mysql_connect() yn anghymeradwy o PHP 7.0.
  11. I weithio gyda ffeiliau yn PHP, gallwch ddefnyddio swyddogaethau fel fopen(), fread(), fwrite(), a fclose(). I weithio gyda chyfeiriaduron, gallwch ddefnyddio swyddogaethau fel opendir(), readdir(), a closedir().
  12. I drin gwallau yn PHP, defnyddiwch y swyddogaeth error_reporting() i reoli lefel yr adrodd am wallau, a'r bloc ceisio dal i drin eithriadau. I ddadfygio'ch cod PHP, defnyddiwch y swyddogaeth error_log () i gofnodi gwallau, a'r swyddogaeth var_dump () i argraffu gwybodaeth newidiol. Yn ogystal, gallwch ddefnyddio'r estyniad xdebug i gael gwybodaeth ddadfygio fanylach.
Sefydlu amgylchedd datblygu PHP
cau

Cadwch y wybodaeth ddiweddaraf am PHP!

Nid ydym yn sbam!

en English
X
Sgroliwch i'r brig