Ha a kód formázása nincs megadva ebben a részben, akkor a kódot a PSR-2 szerint kell formázni

  • A tabulátorok behúzásként használatosak a kódban.
  • A nyitó merevítő ugyanazon a vonalon van.
  • Záró merevítőúj vonalon van.

Kód kommentálása

A PHP kód kommentálása ennek szerves része!

A kód kommentálásakor használjon PHPDoc megjegyzéseket.

A kód egysoros magyarázó megjegyzéseihez használhatja a // karakterrel kezdődő normál megjegyzéseket.

Változók

A változó elnevezésének alapszabálya, hogy a név olyan legyen, hogy ne legyen szükség megjegyzésre a változó céljának magyarázatához.

Előtagok

A változónevek a következő előtagokat használják:

  • ar- tömbökhöz
  • db- a CDBResult számára
  • b- logikai változók esetén, ha a név nem egyértelmű. Az előtag akkor szükséges, ha logikai értéket használnak ott, ahol általában egy karakterláncot tárolnak. I/N.

$arUserList = array(); $dbRes = CIBlockElement::GetByID($id); $bActive = hamis;

A változónevek nem kezdődhetnek aláhúzással.

Globális változók

A globális változókat NAGYBETŰVEL írjuk, aláhúzásjellel elválasztva.

Globális $USER, $APPLICATION, $AR_MESSAGES.

Globális változók használata csak akkor megengedett, ha feltétlenül szükséges. Használd, amit a D7 ad, ahol ad!

Lokális változók

A szkriptben lokális változók (függvény, metódus, osztály) mindig kisbetűvel kezdődnek, a szavakat az első karakter nagybetűivel választják el (camelCase).

Ez a szabály a rövidítésekre vonatkozik.
Azok. a BBC állomást $bbcStationnek írják; $arBbcStations; .

Csak egy kivétel van - az azonosítót nagybetűvel írják.
Azok. $sectionID , $arElementIDs .

$számláló = 0; $bElementActive = false; $lastErrorMsg = ""; $ID = $_GET["ID"];

Segéd (ideiglenes) változók

A FOR... FOREACH konstrukciókban használt változók lerövidíthetők, ha annak a blokknak a kódját, amelyben használják őket, az oldal görgetése nélkül tekintjük meg.

For ($i = 0; $i< count($arRows); $i++) { // ... } foreach ($arElement as $k =>$v) ( // ... ) while ($arr = $dbRes->Fetch()) ( // ... )

Állandók

Az állandó neveket NAGYBETŰVEL írjuk, a szavakat aláhúzás választja el. A globális hatókörrel kapcsolatban az állandókat egy rövid előtagnak kell megelőznie (a modul, komponens, sablon nevével).

Bitrix karakterkódok

A Bitrix szimbolikus kódjai sok mindenhez szükségesek, ezért egységes elnevezésüket kell követni. A karakterkódot latin betűkkel, számok és speciális karakterek nélkül kell írni, és tükröznie kell az infoblokk, szakasz vagy elem lényegét.

Osztályok, metódusok, függvények elnevezése

  • Az osztálynevek mindig ezzel kezdődnek nagybetű. A szavakat az első betű nagybetűvel választja el egymástól. (teve tok)
  • A metódusok és függvények neve mindig kis betűvel kezdődik. A szavakat az első betű nagybetűvel választja el egymástól. (teve tok)

A függvények globális hatókörével kapcsolatban a nevüket rövid előtaggal kell kezdeni (modul, komponens, sablon nevével).

Irányítási struktúrák kialakítása

A vezérlőstruktúrák általános szabálya az, hogy egy logikai kódblokkot behúzzák.

Ha a blokk nem fér el egy képernyőn, akkor legalább két tabulátor behúzódik. Az egyikhez kapcsolódó nagy kódblokk logikai elem, két vagy több üres sorral kell elválasztani, és el kell látni nyitó és záró megjegyzésekkel, amelyek elmagyarázzák az elem logikáját.

Eszközök a kód automatikus formázásához, paraméterek beállításához

[Plugins for SublimeText]

  • PhpDoc - Valójában a PHPDoc formátum támogatására szolgáló bővítmény.
  • phpfmt - plugin a php kód automatikus formázásához (a php telepítéséhez szükséges).

Plugin konfig phpfmt.

A géppel írt szöveg nyomtatott karakterekből - grafikus szimbólumokból áll.
A grafikus karakterek olyan karakterek, amelyek láthatóan megjelennek a szövegben.
Az összes grafikus szimbólumot egyetlen készletben gyűjtöttük össze univerzális rendszer Unicode.
Beszúrás grafikus szimbólum Unicode html dokumentumba
- ennek a táblázatnak a fő és egyetlen célja.

A következő módok egyikével illeszthet be egy karaktert egy html dokumentumba:

  1. másolja a szimbólumot a böngészőablakból a vizuális html-szerkesztő ablakába
  2. másolja be egy karakter html kódját közvetlenül a html dokumentum kódjába
Megértjük, hogy ez két különböző mód:
  1. illessze be a vizuálist a vizuálisba
  2. kód beágyazása a kódba.

Egy szimbólum betűtípusa, mérete és színe a HTML-ben beállítható egy kóddal, például:
CHAR_CODE
ahol,
Arial - betűtípus,
10 képpont – betűméret pixelben,
#ff0000 - betűszín kód (piros)

Például:
☎ - karakter betűméret 30 képpont,
☎ - karakter betűméret 30px, szín - piros
☎ - karakter betűméret 20 képpont,
☎ - karakter betűméret 10 képpont.
Jegyzet. A speciális karakterek beszúrásához ajánlott betűtípusok az Arial, a Verdana és a Tahoma. Ezek a betűtípusok megfelelően jelenítik meg a Unicode karaktereket, és a webalkalmazások megfelelően támogatják őket.

  1. "Szimbólum"
    (látható szimbólum kijelző)
    Ebből az oszlopból kimásolhatja a szimbólum képét, és beillesztheti a html szövegszerkesztő ablakába. A szimbólum 20 képpontos betűmérettel lesz átmásolva. A másolás befejezése után szükség lehet közvetlenül a másolt karakter betűméretének egyéni beállítására.
  2. "Név"
    (csak fontos vagy homályos karakterek esetén)
    A szimbólum céljának magyarázata, hatóköre, példák ...
  3. "Mnemonika"
    A mnemonika a HTML-ben egy karakter betűkódját jelölő " alakú betűkonstrukció. Közvetlenül egy html dokumentum html kódjába kerül. A mnemonika nagyon népszerű a professzionális betűszedők körében. Tökéletesen megjegyzi az ember, ill. minden html-alkalmazás támogatja. Minden emlékeztető tartalmazza a szimbólumának betűnevét (megnevezése ) és egy szolgáltatás karaktert (&), amely jelzésként szolgál a böngésző kódjának olvasásához, és nem jelenik meg a képernyőn.A név mindegyik mnemonika egyedi és könnyen olvasható, mert a szimbólumot jellemző angol szóból áll.

    Mnemonika (görögül) - valamire való emlékezés művészete. A mnemonikát a nehezen megjegyezhető információk észlelésének megkönnyítésére használják, amikor a memorizálás tárgyát asszociatív állapotba hozzuk valamivel.

  4. "A kód"
    Kód - numerikus decimális kód karakter a HTML-ben, & alakú. Közvetlenül egy html dokumentum html kódjába illesztve. A numerikus decimális kód egy jelölő számból áll sorozatszám karakter a Unicode rendszerben és számos szolgáltatás karakter (& és #), amelyek jelzésként szolgálnak a böngésző kódjának olvasásához, és nem jelennek meg a monitor képernyőjén. A numerikus decimális kódot széles körben használják és használják sokoldalúságának és könnyű észlelésének köszönhetően.

Vezérlőkarakterek HTML-ben (XHTML)

A HTML vezérlőkarakterei (XHTML) a HTML nyelv szolgáltatásszimbólumai, amelyeket a weboldal HTML-elrendezésében használnak. Ezeket a karaktereket minden böngészőnek támogatnia kell, mert nélkülük lehetetlen a HTML szöveget helyesen megjeleníteni. A vezérlőkarakterek nem jelennek meg a szövegben, és a billentyűzetről közvetlenül beírva azokat a böngésző írásjelekként értelmezi, amelyek cselekvésre szólítanak fel, amikor az oldalt a képernyőre rajzolják.

Szabályos szövegekben megengedett a vezérlőkarakterek használata, ahol ezek az univerzális fogalmakat szimbolizálják, és a böngésző közönséges tipográfiai karakterként kezeli őket. A HTML-szövegekben a szolgáltatási szimbólumok ilyen használatával nem magának a szimbólumnak az értékét kell megadni, hanem a HTML-kódját. Mert, ismétlem, különben a böngésző cselekvésre ösztönzésként fogja fel a szolgáltatás szimbólumot, és nem jeleníti meg megfelelően a HTML-szöveget a monitor képernyőjén.

A vezérlőkaraktereket és a hozzájuk tartozó HTML kódot kivétel nélkül minden böngésző ismeri és érti, ami sajnos nem mondható el más karakterekről, amelyek esetleg nem jelennek meg megfelelően különböző böngészők vagy ami még rosszabb, egyáltalán nem jelenik meg.

Szintaxis és írásjelek

N hosszúságú tér (szabályos tér)
M hosszúságú tér (hosszú tér)
- lágy kötőjel (nem nyomtatható jel) - ­
kötőjel –
- N hosszúságú kötőjel (szabályos kötőjel) -
M-hosszú kötőjel (em kötőjel)
. pont .
, vessző ,
ellipszis …
: kettőspont :
; pontosvessző ;
! felkiáltójel !
ǃ
? kérdőjel ?
@ "kutya" @
* "csillag" *
# "rács" #
egyetlen bal felső idézet ‘
egyetlen jobb felső idézet ’
egyetlen jobb alsó idézet ‚
dupla bal felső idézőjel “
dupla jobb felső idézet ”
dupla jobb alsó idézet &bdquo „
« dupla bal szög idézőjel (rus) « «
» dupla derékszögű idézet (rus) » »
́ ékezetes jel, például: Vasya ́
" aposztróf, példa: te "I "
´ akut, például: you'ya ´ ´
bekezdés (nem nyomtatható karakter)
§ bekezdés § §
ˆ akcentus (fordított madár) ˆ ˆ
ˆ
˜ kis tilde ˜ ˜
˜
¦ függőleges pontozott vonal ¦ ¦
( bal zárójel (
) jobb zárójel )
szögletes zárójel balra
sarokkonzol jobbra
saroktartó bal, változat
saroktartó jobb, változat
[ szögletes zárójel balra [
] szögletes zárójel jobbra ]
/ perjel - perjel karakter /
\ fordított perjel \
perjel (osztójel)
ǀ függőleges sáv ǀ
ǁ dupla függőleges sáv ǁ
áthúzás, példa: Vasya‾Vasya
¯ macron, például: Vasya¯vasya ¯ ¯

Védjegyek és valuta

+ egy plusz + +
mínusz -
= egyenlő =
± plusz vagy mínusz ± ±
× szorzójel × ×
÷ osztás jele ÷ ÷
pont operátor (a karakterlánc közepe) ·
csillag operátor (a karakterlánc közepe)
tilde operátor
. listajelző (a sor közepe) . •
¹ felső index "1" ¹ ¹
² felső index "2" ² ²
³ felső index "3" ³ ³
Felsõ és alsó index a HTML-ben (XHTML)
címkék segítségével beilleszthető és , illetve:
SZÁM Felső index→ SZÁM Felső index
SZÁM alsó index→ SZÁM Index
½ tört "fél" ½ ½
tört "egyharmad"
¼ tört "egynegyed" ¼ ¼
¾ háromnegyed töredéke ¾ ¾
számjel
% százalék %
ppm ‰
° fokon ° °
stroke (perc, láb)
kettős löket (másodperc, hüvelyk)
1. példa: 30° 25′ 12″
2. példa: 25′ 12
µ mikro µ µ
π Pi π π
ƒ funkció jele
(nem tévesztendő össze az "integrál"-al)
ƒ ƒ
ƒ
integrál
áthúzott nulla, üres halmaz
(nem tévesztendő össze az "átmérővel")
átmérő (nem tévesztendő össze az áthúzott latin "o"-val)
ø latin "o" átlósan áthúzva ø ø
Ø latin nagybetűs "O" átlósan metszett Ø Ø
termék védjegy
összegző jel
radikális
(négyzetgyök vagy x gyök)
arányosan
végtelenség
sarok
merőleges (merőleges)
"ezért" jel
megközelítőleg egyenlő
majdnem egyenlő
nem egyenlő
azonosan
kisebb vagy egyenlő
több vagy egyenlő
logikus ÉS
logikai VAGY
plusz jel egy körben
(közvetlen összeg)
"körben szorzás" jel
(keresztszorzat, nyíl a megfigyelőtől)
ʘ pont egy körben
(nyíl a megfigyelő felé)
ʘ

✵ ✵

Egy modern nagy projekthez általában kötelező a cnc használata az oldalakhoz. Ez pozitív hatással van a webhely indexelésére és az eredmények problémájára.

CNC - ember által érthető url. Más szóval, ez az url latinul átírt része. Az orosz ábécé php-re való átírását már elemeztük. A Bitrixben van ilyen funkció, például létrehozáskor használják új elem vagy infoblokk szakasz, ennek az elemnek vagy szakasznak a karakterkódja a nevéből jön létre. De mi a teendő, ha az elemek már létrejöttek, de a szimbolikus kódok nincsenek regisztrálva. Nézzük a megoldást erre az esetre:

"inc",); $arFilter = array("IBLOCK_ID" => $arParams["IBLOCK_ID"], "IBLOCK_LID" => "s1" //webhely neve //"CODE" => "", //"CODE" => false); $arTransParams = array(//(maximális kódhossz, kis- és nagybetűk (alsó, felső, ne változtass), //szóköz cseréje erre:..., többi karakter módosítása... karakterrel, felesleges helyettesítő karakterek eltávolítása) "max_len" => 100 , "change_case" => "L", // "L" - toLower, "U" - toUpper, false - ne módosítsa "replace_space" => "-", "replace_other" => "-", "delete_repeat_replace " => igaz); if($arParams["TYPE_WORK"] == "szakasz")(//a szakaszokhoz $db_elemens = CIBlockSection::GetList($arOrder, $arFilter, false); $db_elemens->NavStart($arParams["LIST_CNT"] ); visszhang "
"; while($ar_res = $db_elemens->GetNext()) ( $transName = CUtil::translit($ar_res["NAME"], "ru", $arTransParams); $arPropArray = Array("CODE" => $transName); $el = új CIBlockSection; $res = $el->Frissítés($ar_res["ID"], $arPropArray); echo "eredmény a következőre ".$ar_res["NAME"]." van ".$transName."".($res?" and OK":" and failed")."\r\n"; ) echo "
"; )elseif($arParams["TYPE_WORK"] == "elem")(//elemekhez $db_elemens = CIBlockElement::GetList($arOrder, $arFilter, false, array("nTopCount" => $arParams[") LIST_CNT"])); echo "
"; //a generálás eredményének formázott kimenetéhez while($obElement = $db_elemens->GetNextElement()) ( $ar_res = $obElement->GetFields(); $transName = CUtil::translit(trim($ar_res[" NÉV" ]), "ru", $arTransParams);//függvény szimbólumkód létrehozásához a névből $arPropArray = Array("CODE" => $transName."-".$ar_res["ID"],);/ /az "előtag" hozzáadásához a kész kódhoz - "-id" $el = new CIBlockElement; $res = $el->Update($ar_res["ID"], $arPropArray);//írja az eredményt, írja felül a ennek az elemnek a kódja echo $ transName."-".$ar_res["ID"]." 
"; //kiírja az eredményt ) echo "
"; } ?>

Futtassa többször a php szkriptet egy külön fájlban vagy a php-console-ban a Bitrix adminisztrációs paneljén, amíg már nem kap üzenetet a karakterkód sikeres generálásáról. Ennek eredményeként egy latin karakterlánc jelenik meg a "Karakterkód" mezőben a megfelelő NC formájában.

Gyermek sílécek: lyzhi-detskie
LEGO játék: toyrushka-lego

A megjelenés dátuma: 2011.12.12

A minap szükség volt karakterkódok generálására a Bitrix "Bútorkatalógus" információs blokkjának szakaszaihoz és elemeihez.

Mit karakter kód szakaszban vagy infoblokk elemben a Bitrixben? Egy infoblokk elemének (szakaszának) szimbolikus kódja a Bitrixben azt jelenti mnemonikus azonosító, amely karakterek halmaza (latin betűk és számok). Ez a mnemonikus azonosító használható hivatkozási címek kialakítására dinamikus oldalak az oldalon. Például, ha a "Kárpitozott bútorok" szakaszban található "Sofa Cosmos" elem a "divan-cosmos" karakterkóddal rendelkezik, akkor a webhelyen található hivatkozás így nézhet ki: "/catalog/myagkaya-mebel/divan-cosmos"

Egy csapásra készül, a fő kérdés az volt, hogy milyen módszerrel kell átírni. Az első gondolat valóban valamiféle módszer összeállítása. Azonnal elvetette. Azon egyszerű oknál fogva, hogy – végül is, hogyan generálódnak ezek a karakterkódok a CMS-ben? Azt is, hogyan keletkeznek. Tehát van egy módszer! Igen, ő az.

Van ilyen egyszerű funkció, ami valamiért még nem került leírásra hivatalos dokumentáció a Bitrix API által. (a cikk írásakor (2011. december) a dokumentációban nem volt említés)

CUtil::translit($str, $lang, $params = array())

A függvény átír egy karakterláncot $str a nyelvtől $lang paraméterekkel $params.

Paraméterek egy tömbben $params:

A kernel új verzióiban (11.5.2-ben láttam) megjelent új paraméter "safe_chars", alapértelmezett értéke "", a "use_google"-t is kommentálta, alapértelmezés szerint false.

PÉLDA a felhasználásra:

"-","replace_other"=>"-"); $trans = Cutil::translit($name,"ru",$arParams); echo $transz; ?>

UPD. A kommentben elhangzott a kérdés:
"Lehetséges egyszerű módon, hogy a Bitrixben hol lehet valamit előírni, hogy a CNC generáljon, amikor az infoblokkok importálása működik?"
A kérdés helytelen, és nehezen tudom megérteni. De különleges esetként hozok egy ilyen példát -
a feladat az áruk karakterkódjainak generálása a kereskedelmi katalógus CSV-ből történő importálásakor.

"-","replace_other"=>"-"); $trans = Cutil::translit($name,"ru",$arParams); $arFields["CODE"] = $transz; ) ) ?>

Így CSV-fájlból történő importáláskor egy szimbolikus kód automatikusan generálódik - a név átírása.

Fontos UPD2.

Elkezdtek kérdéseket feltenni, hogy az átírás nem működik, lásd a megjegyzéseket. Úgy döntöttem, hogy kitalálom, de nem tudom reprodukálni a problémát egyik jelenlegi vagy régi projektemen sem - minden rendben van velem. De az emberek nem?

MEGOLDÁS!

A probléma a kódolással van. Hozzáadás a .htaccess fájlhoz:

php_value mbstring.func_overload 2
php_value mbstring.internal_encoding UTF-8

Mi a teendő, ha ez nem segít? A "helyszín ellenőrzése" oldalon az adminisztrációs panelre lépünk, és elindítjuk az ellenőrzést. Ha egy hibás kódolásról szóló üzenet marad az ellenőrzésben, ne csüggedjen. Vagy fel kell vennie a kapcsolatot a gazdagéppel a beállítások javításához, vagy felejtse el a szabványos átírási funkciót, és írja meg a sajátját. (És ne lepődj meg a kódolás miatti egyéb hibákon).

Szabványos nemzetközi karakterkód, amelyben minden karakter hét bittel van kódolva. Távközlési témák, alapfogalmak EN ISO 7 ...

ISO-7 kód- Szabványos nemzetközi karakterkód (ISO 646 1973), amelyben minden karakter hét bittel van kódolva. Az Egyesült Államokban ennek a kódnak a verzióját ASCII-nek hívják. [E.S. Alekseev, A.A. Myachev. Angol orosz magyarázó szótár a számítógépes rendszerek tervezéséhez. Moszkva 1993]…… Műszaki fordítói kézikönyv

Kód (digitális számítógépben)- Kódolás számítógépben, hagyományos jelrendszer az információk számítógépben történő megjelenítésére. Minden K. az ábécéjének karaktereit használja. A legtöbb ábécé esetében az ábécé két karakterből áll, vagy egy kétkarakteres ábécé betűiből áll. K. fizikai formája a karaktertől függ ......

IATA légitársaság kódja- IATA légitársaság kód 2 vagy 3 karakteres egyedi azonosító, amelyet a Nemzetközi Szövetség rendelt a légitársasághoz légi közlekedés(IATA). Ezt a kódot az IATA 762. számú határozatának megfelelően a szövetség székhelye osztja ki a ... ... Wikipédiában

A kód- I (francia kód, latin kódexből törvénykönyv) konvencionális jelek (szimbólumok) rendszere különböző információk továbbítására, feldolgozására és tárolására (memorizálására). A kódkarakterek végső sorozatát szónak nevezzük. A különböző karakterek száma, ...... Nagy szovjet enciklopédia

RADIX-50- karakterkód, amely lehetővé teszi három karakter írását egy 16 bites szóban. Főleg miniszámítógépeken használták, elsősorban a PDP 11 családhoz (SM számítógépek) fájlnevek tárolására. fájlrendszerek OS RT 11 és RSX 11, modulnevek ... ... Wikipédia

ESCON- (Enterprise Systems Connection) üvegszálas csatorna interfész, amely információcserét biztosít az IBM zSeries szerver és az IBM zSeries szerver között perifériák(vagy másik szerver). Először az archív szerverekben használták... Wikipédia

cím- n., m., használat. gyakran Morfológia: (nem) mi? címek mire? cím, (lásd) mit? minek a címe? cím miről? a címről; pl. mit? címek, (nem) mit? címek mire? címek, (lásd) mit? címek, mi? címek miről? címekről 1. Valaki címe ...... Szótár Dmitrieva

feladatazonosító- Egy futó vagy futtatásra kész feladathoz rendelt karakterkód. [Domarev V.V. Biztonság információs technológiák. Rendszerszemléletű.] Témakörök információbiztonság EN feladatazonosító ... Műszaki fordítói kézikönyv

Pascal (programozási nyelv)- Ezt a cikket vagy szakaszt felül kell vizsgálni. A Pascalban nincsenek modulok, OOP és más újszerű trendek. A kiterjesztések leírása csak a megfelelő ... Wikipédia cikkeiben jelenjen meg

Pascal (nyelv)- Pascal Szemantika: procedurális Végrehajtás típusa: fordító Bevezetés: 1970 Szerző(k): Niklaus Wirth A Pascal egy általános célú, magas szintű programozási nyelv. Az egyik leghíresebb programozási nyelv, széles körben ... ... Wikipédia

Könyvek

  • Nyelvi és kulturális módszer a frazeológiában. A kultúra kódjai, M. L. Kovshova. A monográfiát a frazeológiai egységek – nyelvi jelek – nyelvkultúrológiai vizsgálatának szenteljük, amelyek képletesen tárolják és nemzedékről nemzedékre továbbítják a nemzeti... Vásárlás 1053 UAH-ért (csak Ukrajna)
  • Nyelvi és kulturális módszer a frazeológiában Kultúra kódjai, Kovshova M.