Newidynnau a mathau o ddata yn PHP

V

Beth yw newidynnau yn PHP 8?

Mae gan newidynnau y gwerth a all newid wrth weithredu rhaglen. Mae PHP hefyd yn cynnwys newidynnau fel ieithoedd eraill fodd bynnag, mae ganddo ei set ei hun o reolau i ddatgan a defnyddio'r newidynnau yn PHP 8. Yn y tiwtorial PHP 8 hwn, byddwch chi'n dysgu am newidynnau a mathau o ddata yn PHP.

I astudio beth sy'n newydd yn PHP 8, gallwch fynd i'r ddolen hon.

Sut i ddatgan newidynnau yn php 8?

Cyhoeddir newidyn gan ddefnyddio $ arwydd ac yna enw'r newidyn. Os ceisiwch ddatgan y newidyn heb arwydd doler, bydd yn rhoi gwall cystrawen. Canlynol yw'r enghraifft o ddatgan newidynnau yn PHP 8.

<?php
$current = 100;
$new = "foo";
$old = True;
?>

Mae un peth am newidynnau PHP yn neis iawn yw hynny, nid oes angen datgan y math o ddata ynghyd â'r newidyn PHP. Mae'r newidyn yn mabwysiadu'r math o ddata sy'n cael ei storio ynddo yn awtomatig.

<?php
$current = 100; // $current is of type integer
$new = "foo"; // $new is of type string
$old = True; // $old is type of boolean
?>

Sut i drosi newidyn o un math o ddata i un arall?

Fel y soniwyd uchod, mae newidynnau PHP yn dangos ymddygiad deinamig yn eu math yn diffinio yn ôl y data sydd wedi'i storio ynddynt, ond mae datblygwyr PHP yn nodi bod sefyllfaoedd o'r fath lle mae angen iddynt drosi'r newidyn o un math o ddata yn un arall. Cyfeiriwch at yr enghraifft ganlynol lle rydyn ni'n datgan newidyn cyfanrif math ac yna'n cael ei werth fel llinyn.

<?php
$int = 80; // $int is of type integer

$string = (string) $int; // $string is of type string, holding the value of $int but as a string

print($string) // outputs "80"
?>

Set o reolau i ddiffinio newidynnau yn PHP 8

Mae pob iaith raglennu yn diffinio rhai rheolau ar gyfer ei newidynnau. Yn yr adran hon, byddwch yn dysgu'r rheolau i ddatgan newidynnau yn PHP 8.

  • Rhaid i newidyn PHP ddechrau gyda $ arwydd ac yna enw'r newidyn.
  • Mae newidynnau PHP yn synhwyraidd achos. Mae $ var a $ VAR yn ddau newidyn gwahanol.
  • Rhaid i'r enw dechrau gyda chymeriad yr wyddor neu danlinellu.
  • Ni all enw amrywiol ddechrau gyda rhif, ond gall gynnwys rhif yng ngweddill y lleoliadau.
  • Mae enw amrywiol yn cynnwys nodau alffaniwmerig a thanlinellu yn unig.

Beth yw newidynnau Lleol, Byd-eang a Statig yn PHP

Mae Lleol, Byd-eang a Statig yn wahanol sgopiau o newidynnau PHP, sy'n diffinio hygyrchedd y newidynnau o fewn y cod PHP.

Newidynnau Byd-eang

Mae newidynnau byd-eang ar gael yn fyd-eang, unrhyw le yn y ffeil gyfredol rydych chi'n gweithio ynddi. Fodd bynnag, ni allwch gael mynediad at y newidynnau byd-eang y tu mewn i swyddogaeth.

<?php
$x = 15; // $x has global scope

function testing() {
  // accessing $x in this function will give an error
  echo $x;
}
testing();

echo "x outside function: $x";
?>

Newidynnau Lleol

Gelwir newidynnau sydd wedi'u datgan y tu mewn i'r swyddogaeth yn newidynnau lleol. Mae ganddynt gwmpas y swyddogaeth y maent yn cael ei datgan ynddo. Os ceisiwch gael mynediad atynt y tu allan i'r swyddogaeth, bydd yn rhoi gwall i chi.

<?php
function testing() {
  $x = 15; // $x has local scope
  echo "x inside function is: $x";
}
testing();
// accessing x outside the function will give an error
echo "x outside function is: $x";
?>

Newidynnau Statig

Defnyddir newidynnau statig i storio neu gynnal y wladwriaeth neu werth nes nad yw'r rhaglen yn cael ei hail-grynhoi. Fel rheol, mae PHP yn dileu'r newidynnau a ddatganwyd mewn swyddogaeth ar ôl cwblhau'r swyddogaeth, ond os yw'r newidyn yn statig, gellir ei gyrchu hyd yn oed ar ôl i'r swyddogaeth gwblhau ei chyflawni.

Nodyn: Mae cwmpas lleol i newidynnau statig a ddatganir o fewn y swyddogaeth.

<?php
function testing() {
  static $a = 10;
  echo $a;
  $a++;
}

testing(); output 11
testing(); output 12
testing(); output 13
?>

Tip: Gelwir newidynnau yn PHP sy'n storio cyfeiriad y newidynnau eraill yn newidynnau cyfeirio.

Arae BYD-EANG yn PHP 8

Mae GLOBALS yn gyfres o newidynnau sy'n cynnwys y newidynnau globals. Gallwch arbed a chyrchu'r newidynnau byd-eang o'r arae GLOBALS, hyd yn oed o fewn y swyddogaeth. Gallwch chi ddiweddaru'r newidynnau byd-eang y tu mewn i'r swyddogaeth trwy ei gyrchu o'r arae GLOBALS. Bydd yr enghraifft ganlynol yn dangos y cysyniad i chi yn gliriach.

<?php
$var1 = 15;
$var2 = 20;

function testing() {
  $GLOBALS['sum'] = $GLOBALS['var2'] + $GLOBALS['var1'];
}

testing();
echo $sum; // outputs 35
?>

Mathau o ddata yn PHP

Mae cyfanswm o wyth math o ddata ar gael yn PHP 8.

Cyfanrif

Gwerth rhifol heb bwynt degol. Gall fod yn gadarnhaol (+) neu'n negyddol (-).

Rhif pwynt arnofio neu arnofio

Gwerth rhifol gyda phwynt degol, felly, a elwir yn fflotiau, rhifau real, neu ddyblau.

Tannau

Unrhyw gymeriad wedi'i amgáu mewn dyfyniadau sengl neu ddwbl. Gall y terfyn uchaf o faint data llinyn fod yn 2GB (2147483647 beit).

Boole

Gall fod yn wir neu'n anwir.

Array

Storiwch werthoedd lluosog mewn dilyniant y tu mewn i'r cof. Gall yr arae fod yn un neu'n aml-ddimensiwn neu gall fod yn gysylltiadol. Byddwn yn archwilio'r araeau gyda mwy o ddyfnder yn y tiwtorialau arae.

Gwrthrych

Mae gwrthrychau yn enghreifftiau o'u dosbarth ac yn cynnwys eu priodweddau. Mae gwrthrychau nid yn unig yn storio'r gwerth ond hefyd y wybodaeth sy'n dweud sut i brosesu'r data sydd wedi'i storio ynddo. Byddwn yn dysgu am y math o ddata gwrthrych PHP yn ei diwtorial pwrpasol.

Adnoddau

Mae newidynnau math data adnoddau yn newidynnau arbennig sy'n dal y triniwr neu'n cyfeirio at ryw adnodd allanol fel cysylltiad cronfa ddata neu wrthrych ffeil. Byddwn yn astudio adnoddau yn PHP gyda mwy o ddyfnder yn ei diwtorial.

NULL

Mae Null yn fath o ddata sydd ond yn cynnwys un gwerth null. O ganlyniad, mae'n un o'r mathau mwyaf diddorol o ddata ar gyfer y dechreuwyr yn ogystal ag ar gyfer arbenigwyr.

<?php
// The following two examples of the NULL data type are always different from each other
$var = "" // is not null but an empty string
$var = NULL / is null
?>

Nodyn: Mae newidyn newydd yn cynnwys gwerth NULL.

Tip: Ygall ou hefyd storio gwerthoedd deuaidd mewn newidyn. Felly, dechreuwch y gwerth gyda 0b ac yna'r gwerth deuaidd. Fodd bynnag, i storio gwerth hecsadegol, dechreuwch ef gyda 0x, ac i storio wythol dechreuwch ef gyda 0.

Nesaf byddwn yn siarad am llinynnau a swyddogaethau llinynnol.

Ychwanegu sylw

Rhwydwaith Tiwtoriaid

Dysgwch PHP o A i Z