Iko wapi kona ya juu ya kulia ya ukurasa. Vidhibiti kwenye ukurasa wa Mipangilio wa kivinjari cha Google Chrome. Maombi ya nafasi ya kudumu

Mara kwa mara ni kitambulisho (jina) cha thamani rahisi. Kama jina linavyopendekeza, thamani yao haiwezi kubadilika wakati wa utekelezaji wa hati (isipokuwa mara kwa mara uchawi, ambazo sio za kudumu). Majina ya mara kwa mara ni nyeti kwa herufi kwa chaguomsingi. Kwa kawaida, majina ya kila wakati huandikwa kwa herufi kubwa.

Jina la mara kwa mara lazima lifuate kanuni sawa za kutaja kama majina mengine katika PHP. Jina halali huanza na herufi au alama chini ikifuatwa na idadi yoyote ya herufi, nambari na mistari. Usemi wa kawaida wa kuangalia usahihi wa jina lisilobadilika inaonekana kama hii: ^*$

Inawezekana kufafanua mara kwa mara kwa kutumia kazi fafanua () majina yaliyohifadhiwa au hata batili ambayo thamani zake zinaweza (pekee) kupatikana kupitia chaguo la kukokotoa mara kwa mara () . Hata hivyo, hii haifai.

Mfano # 1 Majina sahihi na yasiyo sahihi ya mara kwa mara

// Sahihisha majina ya mara kwa mara
fafanua ("FOO", "kitu");
fafanua ("FOO2" , "kitu kingine");
fafanua ("FOO_BAR" , "kitu zaidi");

// Majina yasiyo sahihi ya mara kwa mara
fafanua ("2FOO" , "kitu");

// Hili ni tamko halali, lakini ni bora kutolitumia:
// PHP inaweza siku moja kusajili uchawi mara kwa mara,
// ambayo itavunja hati
fafanua ("__FOO__" , "kitu");

?>

Maoni: Wazo la "herufi" hapa ni herufi a-z, A-Z, na herufi zingine zilizo na nambari za ASCII kutoka 128 hadi 255 (0x80-0xff).

Miaka 2 iliyopita

Utendaji wa mara kwa mara. PHP 7.1.10 biti 32 (Opcache hai, windows 10 i7-64bits) lakini inaonekana mienendo ni sawa na 5.x

kwa kutumia mara kwa mara iliyotangazwa na DEFINE("CNS",value) : 0.63575601577759s
kwa kutumia mara kwa mara iliyotangazwa na const CNS=thamani: 0.61372208595276s
kwa kutumia kigezo kilichotangazwa na $v=thamani: 0.51184010505676s

Kwa wastani, matumizi ya DEFINE na CONST ni sawa na utendakazi bora zaidi wa CONST badala ya DEFINE. Hata hivyo, kutumia variable ni karibu 10-50% bora kuliko kutumia mara kwa mara. Kwa hivyo, kwa kazi kubwa ya utendaji, mara kwa mara sio chaguo bora.

$p1=microtime(kweli);
$x=0;
kwa($i=0;$i<50000000;$i++) {
$x+=CNS;
}
$p2=microtime(kweli);

Miaka 14 iliyopita

Nambari isiyo ya kawaida hutathmini kama kweli ikiwa haitumiki kwa usahihi. Sema kwa mfano ulikuwa na kitu kama hiki:

mipangilio.php
// Hali ya utatuzi
fafanua ("DEBUG", uongo);
?>

test.php
include("settings.php");

ikiwa (DEBUG) (
// echo baadhi ya data nyeti.
}
?>

Iwapo kwa sababu fulani settings.php haijumuishwi na kibadilishaji cha DEBUG hakijawekwa, PHP BADO itachapisha data nyeti. Suluhisho ni kutathmini. Kama hivyo:

mipangilio.php
// Hali ya utatuzi
fafanua ("DEBUG", 0);
?>

test.php
include("settings.php");

ikiwa (TATUA == 1 ) (
// echo baadhi ya data nyeti.
}
?>

Sasa inafanya kazi kwa usahihi.

Sasisho la mwisho: 11/1/2015

Mara kwa mara, kama vigezo, huhifadhi thamani maalum, lakini tofauti na vigezo, thamani ya mara kwa mara inaweza kuweka mara moja tu, na kisha hatuwezi kuibadilisha. Kwa mfano, hebu tufafanue nambari ya nambari:

Ili kufafanua thabiti, tumia fafanua opereta, ambayo ina fomu ifuatayo: define(string $name, string $value, bool $case_sen=false) . Kigezo cha $name kinawasilisha jina la mara kwa mara, na parameta ya $value huwasilisha thamani yake. Kigezo cha tatu cha hiari kinachukua thamani ya boolean true au false . Ikiwa thamani ni ya uongo, basi wakati wa kutumia mara kwa mara kesi yake itazingatiwa; ikiwa ni kweli, kesi haitazingatiwa. Kwa upande wetu, parameter ya tatu haitumiwi, kwa hiyo ni uongo kwa default.

Baada ya kufafanua mara kwa mara, tunaweza kuitumia kama tofauti ya kawaida. Isipokuwa tu ni kwamba hatutaweza kubadilisha thamani yake. Tofauti nyingine na kutofautisha ni kwamba hauitaji kutumia ishara ya $. Yaani usemi NAMBA=33; haitafanya kazi.

Vipindi Vilivyoainishwa Awali

Kwa kuongezea viboreshaji vilivyoundwa na programu, PHP ina viboreshaji kadhaa vilivyojengwa:

    FILE__ : huhifadhi njia kamili na jina la faili ya sasa

    LINE__ : huhifadhi nambari ya mstari ya sasa ambayo mkalimani anaichakata

    DIR__: huhifadhi saraka ya faili ya sasa

    FUNCTION__ : jina la chaguo la kukokotoa linalochakatwa

    CLASS__ : jina la darasa la sasa

    METHOD__ : jina la mbinu inayochakatwa

    NAMESPACE__ : jina la nafasi ya sasa ya majina

Kwa mfano, wacha tuchapishe safu ya sasa inayotekelezwa na jina la faili:

Kuangalia uwepo wa mara kwa mara

Kuangalia kama mara kwa mara imefafanuliwa, tunaweza kutumia kitendakazi cha bool defined(string $name) . Ikiwa $name ya mara kwa mara imefafanuliwa, chaguo la kukokotoa litarudi kuwa kweli

Maagizo

Mara tu unapomaliza kuandika kazi yako (au kuianzisha), tengeneza kurasa kulingana na matakwa yako au mahitaji ya mteja. Rekebisha pambizo, aya, badilisha fonti na mipangilio mingineyo. Ili kuhesabu kurasa katika hati ya kihariri cha Neno, tafuta kichupo cha "Ingiza" kwenye paneli ya juu ya kihariri. Huko utaona sehemu kadhaa, kati ya hizo chagua "Kichwa na Vijachini". Vijajuu na kijachini ni maeneo katika hati ambayo hutumiwa kuongeza maelezo yanayojirudia kwenye pambizo za chini, za juu au za kando za hati. Mmoja wao ni nambari za ukurasa. Vijajuu na vijachini vinahitajika ili kugeuza mchakato wa kupanga kurasa, kuandika madokezo, na mengine otomatiki.

Katika safu wima ya kufanya kazi na vichwa na kijachini, katika orodha kunjuzi kwenye uwanja wa "Nambari ya Ukurasa", chagua umbizo linalohitajika la kuweka nambari za ukurasa. Wakati wa kusonga kupitia sehemu, bonyeza-kulia kitufe cha panya kinachofaa. Nambari zitaonekana kwenye kila laha ya hati yako. Kama sheria, zimewekwa katikati ya chini ya ukurasa au kwenye kona ya juu ya kulia.

Ikiwa unahitaji kuhesabu kurasa kwa Neno sio kutoka kwa karatasi ya kwanza (katika karatasi za kisayansi, kama sheria, unahitaji kuweka nambari kwenye ukurasa wa pili au wa tatu), kisha katika sehemu ya "Nambari ya Ukurasa", fungua "Nambari ya Ukurasa". Fomati" kichupo. Huko unaweza kuchagua ni Neno gani litaanza kuweka nambari. Huko unaweza kubadilisha aina ya nambari. Kwa mfano, nambari za karatasi kwa herufi au nambari za Kirumi.

Ikiwa hauitaji kuweka nambari kwenye ukurasa wa kichwa, unaweza kuiondoa kwa urahisi huku ukidumisha nambari zingine. Ili kufanya hivyo, nenda kwenye "Mpangilio wa Ukurasa" kwenye paneli kuu ya Neno, bofya kwenye mshale karibu na chaguzi za ukurasa. Katika sanduku la mazungumzo linalofungua, bofya kwenye kichupo cha "Chanzo cha Karatasi". Huko utaona mstari "Tofautisha vichwa na vijachini". Chagua kisanduku karibu na chaguo la "ukurasa wa kwanza" na uhifadhi mabadiliko. Hivi ndivyo ilivyo rahisi kufanya nambari za ukurasa katika Neno.