이 섹션에 코드 형식이 지정되지 않은 경우 코드는 PSR-2에 따라 형식을 지정해야 합니다.

  • 탭은 코드에서 들여쓰기로 사용됩니다.
  • 여는 중괄호는 같은 줄에 있습니다.
  • 폐쇄 중괄호새로운 라인에 있습니다.

코드 주석

PHP 코드에 주석을 추가하는 것은 필수적인 부분입니다!

코드에 주석을 달 때 PHPDoc 주석을 사용하십시오.

코드의 한 줄 설명 주석의 경우 // 로 시작하는 일반 주석을 사용할 수 있습니다.

변수

변수 이름 지정에 대한 기본 규칙은 이름이 변수의 목적을 설명하는 데 주석이 필요하지 않도록 하는 것입니다.

접두사

변수 이름에는 다음 접두사가 사용됩니다.

  • 아르- 배열의 경우
  • DB- CDBResult의 경우
  • - 부울 변수의 경우 이름이 명확하지 않은 경우. 일반적으로 문자열이 저장되는 위치에 부울 값을 사용하는 경우 접두사가 필요합니다. 예/아니요.

$arUserList = 배열(); $dbRes = CIBlockElement::GetByID($id); $b활성 = 거짓;

변수 이름은 밑줄로 시작하면 안 됩니다.

전역 변수

전역 변수는 밑줄로 구분된 대문자로 작성됩니다.

글로벌 $USER, $APPLICATION, $AR_MESSAGES.

전역 변수의 사용은 절대적으로 필요한 경우에만 허용됩니다. D7이 제공하는 곳에 사용하십시오!

지역 변수

스크립트(함수, 메서드, 클래스)에 대한 로컬 변수는 항상 소문자로 시작하고 단어는 첫 번째 문자의 대문자로 구분됩니다(camelCase).

이 규칙은 약어에 적용됩니다.
저것들. BBC 방송국의 철자는 $bbcStation입니다. $arBbc역; .

단 하나의 예외가 있습니다. ID는 대문자로 작성됩니다.
저것들. $sectionID , $arElementIDs .

$카운터 = 0; $bElementActive = 거짓; $lastErrorMsg = ""; $ID = $_GET["아이디"];

보조(임시) 변수

FOR... FOREACH 구조에서 사용된 변수는 페이지를 스크롤하지 않고 사용된 블록의 코드를 볼 경우 축약될 수 있습니다.

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

상수

상수 이름은 대문자로 작성되며 단어는 밑줄로 구분됩니다. 전역 범위와 관련하여 상수 앞에는 짧은 접두사(모듈, 구성 요소, 템플릿 이름)가 있어야 합니다.

비트릭스 문자 코드

Bitrix의 기호 코드는 많은 일에 필요하므로 통일된 이름을 따라야 합니다. 문자 코드는 숫자와 특수 문자 없이 라틴 문자로 작성되어야 하며 정보 블록, 섹션 또는 요소의 본질을 반영해야 합니다.

클래스, 메서드, 함수 이름 지정

  • 클래스 이름은 항상 대문자. 단어는 첫 글자의 대문자로 구분됩니다. (낙타 케이스)
  • 메서드와 함수의 이름은 항상 소문자로 시작합니다. 단어는 첫 글자의 대문자로 구분됩니다. (낙타 케이스)

함수의 전역 범위와 관련하여 해당 이름은 짧은 접두사로 시작해야 합니다(모듈, 구성 요소, 템플릿 이름으로).

제어 구조의 형성

제어 구조에 대한 일반적인 규칙은 논리적 코드 블록을 들여쓴다는 것입니다.

블록이 한 화면에 맞지 않으면 탭이 두 개 이상 들여쓰기됩니다. 하나와 관련된 큰 코드 블록 논리적 요소, 두 개 이상의 빈 줄로 구분되어야 하며 요소의 논리를 설명하는 여는 주석과 닫는 주석이 제공되어야 합니다.

코드 자동 서식 지정 도구, 매개변수 설정

[SublimeText용 플러그인]

  • PhpDoc - 실제로 PHPDoc 형식을 지원하는 플러그인입니다.
  • phpfmt - PHP 코드의 자동 포맷을 위한 플러그인(php가 설치되어 있어야 함).

플러그인 구성 phpfmt.

입력된 텍스트는 인쇄된 문자(그래픽 기호)로 구성됩니다.
그래픽 문자는 텍스트에서 가시적으로 표시되는 문자입니다.
모든 그래픽 기호는 단일 세트로 수집됩니다. 보편적인 시스템유니코드.
끼워 넣다 그래픽 심볼유니코드를 HTML 문서로
- 이 테이블의 주요 목적입니다.

다음 방법 중 하나로 html 문서에 문자를 삽입할 수 있습니다.

  1. 브라우저 창에서 시각적 HTML 편집기 창으로 기호 이미지를 복사합니다.
  2. 문자의 html 코드를 html 문서의 코드에 직접 복사
우리는 이것이 두 가지 다른 방식이라는 것을 이해합니다.
  1. 비주얼에 비주얼 삽입
  2. 코드 안에 코드를 삽입합니다.

HTML에서 심볼의 글꼴, 크기 및 색상은 다음과 같은 코드로 설정할 수 있습니다.
CHAR_CODE
어디,
Arial - 글꼴,
10px - 글꼴 크기(픽셀),
#ff0000 - 글꼴 색상 코드(빨간색)

예를 들어:
☎ - 문자 글꼴 크기 30px,
☎ - 글자크기 30px, 색상 - 빨강
☎ - 문자 글꼴 크기 20px,
☎ - 글자크기 10px.
메모. 특수 문자 삽입에 권장되는 글꼴은 Arial, Verdana 및 Tahoma입니다. 이러한 글꼴은 유니코드 문자를 올바르게 표시하며 웹 응용 프로그램에서 적절하게 지원됩니다.

  1. "상징"
    (가시적인 기호 표시)
    이 열에서 기호 이미지를 복사하여 html 텍스트 편집기 창에 붙여넣을 수 있습니다. 기호는 20px의 글꼴 크기로 복사됩니다. 복사가 완료된 후 복사된 문자에 대해 직접 글꼴 크기를 개별적으로 조정해야 할 수도 있습니다.
  2. "이름"
    (중요하거나 모호한 문자에만 해당)
    기호의 목적, 범위, 예에 대한 설명 ...
  3. "기억술"
    니모닉(mnemonic)은 HTML에서 문자의 문자 코드를 나타내는 "형식의 문자 구조입니다. html 문서의 html 코드에 직접 삽입됩니다. 니모닉은 전문 조판자들 사이에서 매우 인기가 있습니다. 사람이 완벽하게 기억하고 모든 html 응용 프로그램에서 지원됩니다. 각 니모닉에는 해당 기호의 문자 이름(지정)과 브라우저의 코드를 읽는 신호 역할을 하는 서비스 문자(&)가 포함되어 있으며 모니터 화면에는 표시되지 않습니다. 각 니모닉의 니모닉은 기호를 특징짓는 영어 단어로 구성되어 독특하고 읽기 쉽습니다.

    니모닉(그리스어) - 무언가를 기억하는 기술. 니모닉은 암기의 대상이 무언가와 연관 상태가 될 때 기억하기 어려운 정보의 인식을 용이하게 하는 데 사용됩니다.

  4. "코드"
    코드 - 숫자 십진법& 형식의 HTML 문자. html 문서의 html 코드에 직접 삽입됩니다. 숫자 십진수 코드는 다음을 나타내는 숫자로 구성됩니다. 일련 번호유니코드 시스템의 문자와 여러 서비스 문자(& 및 #)는 브라우저의 코드를 읽는 신호 역할을 하며 모니터 화면에 표시되지 않습니다. 숫자 십진수 코드는 다양성과 인식 용이성으로 인해 널리 사용되고 사용됩니다.

HTML의 제어 문자(XHTML)

HTML(XHTML)의 제어 문자는 웹 페이지의 HTML 레이아웃에 사용되는 HTML 언어의 서비스 기호입니다. 이러한 문자는 HTML 텍스트를 올바르게 표시할 수 없기 때문에 모든 브라우저에서 지원되어야 합니다. 제어 문자는 텍스트에 표시되지 않으며 키보드에서 직접 입력할 때 브라우저에서 구두점으로 해석되어 페이지가 화면에 그려질 때 어떤 동작을 요구합니다.

일반 텍스트에서 제어 문자를 사용할 수 있습니다. 제어 문자는 보편적 개념을 상징하고 브라우저에서 일반 인쇄 문자로 처리됩니다. HTML 텍스트에서 이러한 서비스 기호를 사용하면 기호 자체의 값이 아니라 HTML 코드를 입력해야 합니다. 반복합니다. 그렇지 않으면 브라우저가 서비스 기호를 클릭 유도문안으로 인식하고 모니터 화면에 HTML 텍스트를 올바르게 표시하지 않습니다.

제어 문자 및 해당 HTML 코드는 예외 없이 모든 브라우저에서 알고 이해되며, 이는 에서 올바르게 표시되지 않을 수 있는 다른 문자에 대해 말할 수 없습니다. 다른 브라우저또는 더 나쁜 것은 전혀 표시되지 않습니다.

구문 및 구두점

길이가 N인 공간(정규 공간)
길이 M의 공간(긴 공간)
- 소프트 하이픈(인쇄되지 않는 문자) - ­
하이픈 –
- 길이 N의 대시(일반 대시) -
M 길이 대시(엠 대시)
. .
, 반점 ,
생략 …
: 콜론 :
; 세미콜론 ;
! 느낌표 !
ǃ
? 물음표 ?
@ "개" @
* "별" *
# "격자" #
왼쪽 상단 따옴표 ‘
단일 오른쪽 상단 따옴표 ’
단일 하단 오른쪽 따옴표 ‚
이중 상단 왼쪽 따옴표 “
이중 상단 오른쪽 따옴표 ”
이중 하단 오른쪽 인용 &bdquo „
« 이중 왼쪽 각도 따옴표(rus) « «
» 이중 직각 따옴표(rus) » »
́ 악센트 표시, 예: Vasya ́
" 아포스트로피, 예: 당신 "나는 "
´ 예를 들면: you'ya ´ ´
단락(인쇄되지 않는 문자)
§ § §
ˆ 악센트(거꾸로 새) ˆ ˆ
ˆ
˜ 작은 물결표 ˜ ˜
˜
¦ 수직 점선 ¦ ¦
( 왼쪽 괄호 (
) 오른쪽 괄호 )
꺾쇠 괄호 왼쪽
꺾쇠 괄호 오른쪽
꺾쇠 괄호 왼쪽, 변형
꺾쇠 괄호 오른쪽, 변형
[ 대괄호 왼쪽 [
] 대괄호 오른쪽 ]
/ 슬래시 - 슬래시 문자 /
\ 백슬래시 \
슬래시(나누기 기호)
ǀ 수직 막대 ǀ
ǁ 이중 수직 막대 ǁ
오버라이닝, 예: Vasya‾Vasya
¯ macron, 예: Vasya¯vasya ¯ ¯

상표 및 통화

+ 플러스 + +
마이너스 -
= 같음 =
± 플러스 마이너스 ± ±
× 곱하기 기호 × ×
÷ 분할 기호 ÷ ÷
점 연산자(문자열 중간) ·
별표 연산자(문자열 중간)
물결표 연산자
. 목록 마커(줄 중간) . •
¹ 위 첨자 "1" ¹ ¹
² 위 첨자 "2" ² ²
³ 위 첨자 "3" ³ ³
HTML(XHTML)의 위 첨자 및 아래 첨자
태그를 사용하여 삽입할 수 있습니다. 그리고 , 각각:
숫자 위에 쓴→ NUMBER 위첨자
숫자 아래 첨자→ NUMBER 첨자
½ 분수 "반" ½ ½
분수 "1/3"
¼ 분수 "1/4" ¼ ¼
¾ 4분의 3 분수 ¾ ¾
숫자 기호
% 퍼센트 %
ppm ‰
° 학위 ° °
뇌졸중(분, 피트)
더블 스트로크(초, 인치)
예 1: 30° 25′ 12″
예 2: 25′ 12
µ 마이크로 µ µ
π 파이 π π
ƒ 기능 기호
("integral"과 혼동하지 말 것)
ƒ ƒ
ƒ
완전한
0에 줄을 그어 빈 세트
("직경"과 혼동하지 말 것)
지름(줄이 그어진 라틴어 "o"와 혼동하지 말 것)
ø 라틴어 "o"가 대각선으로 교차 ø ø
Ø 라틴 대문자 "O"는 대각선으로 슬래시됨 Ø Ø
제품 마크
합계 기호
근본적인
(제곱근 또는 x근)
비례적으로
무한대
모서리
직교(수직)
"그러므로" 표시
대략 같음
거의 동등
같지 않다
똑같이
작거나 같음
더 많거나 같음
논리적 AND
논리적 OR
원 안에 더하기 기호
(직접합계)
"원의 곱셈" 기호
(외적, 관찰자의 화살표)
ʘ 원 안에 점
(관찰자에게 화살표)
ʘ

✵ ✵

현대의 대규모 프로젝트의 경우 일반적으로 페이지에 cnc를 사용해야 합니다. 사이트의 인덱싱과 결과의 문제에 긍정적인 영향을 미칩니다.

CNC - 사람이 이해할 수 있는 URL. 즉, 이것은 라틴어로 음역된 url의 일부입니다. 우리는 이미 러시아어 알파벳을 php로 음역하는 것을 분석했습니다. Bitrix에는 이러한 기능이 있으며, 예를 들어 생성할 때 사용됩니다. 새로운 요소또는 정보 블록 섹션에서 이 요소 또는 섹션의 문자 코드는 해당 이름에서 생성됩니다. 그러나 요소가 이미 생성되었지만 기호 코드가 등록되지 않은 경우 수행할 작업입니다. 이 경우에 대한 솔루션을 살펴보겠습니다.

"주식회사",); $arFilter = array("IBLOCK_ID" => $arParams["IBLOCK_ID"], "IBLOCK_LID" => "s1" //사이트 이름 //"CODE" => "", //"CODE" => false); $arTransParams = array(//(최대 코드 길이, case(lower, upper, 변경하지 않음), //replace space with...,다른 문자를 다음으로 변경...,추가 대체 문자 제거) "max_len" => 100 , "change_case" => "L", // "L" - toLower, "U" - toUpper, false - 변경하지 않음 "replace_space" => "-", "replace_other" => "-", "delete_repeat_replace " => 참); if($arParams["TYPE_WORK"] == "섹션")(//섹션 $db_elemens = CIBlockSection::GetList($arOrder, $arFilter, false); $db_elemens->NavStart($arParams["LIST_CNT"] ); 에코 "
"; while($ar_res = $db_elemens->GetNext()) ( $transName = CUtil::translit($ar_res["NAME"], "ru", $arTransParams); $arPropArray = Array("CODE" => $transName); $el = 새로운 CIBlockSection; $res = $el->Update($ar_res["ID"], $arPropArray); echo "에 대한 결과 ".$ar_res["NAME"]."~이다 ".$transName."".($res?" 및 OK":" 및 실패")."\r\n"; ) echo "
"; )elseif($arParams["TYPE_WORK"] == "요소")(//요소용 $db_elemens = CIBlockElement::GetList($arOrder, $arFilter, false, array("nTopCount" => $arParams[") LIST_CNT"])); 에코 "
"; //생성 결과의 형식화된 출력용 while($obElement = $db_elemens->GetNextElement()) ( $ar_res = $obElement->GetFields(); $transName = CUtil::translit(trim($ar_res[") NAME" ]), "ru", $arTransParams);//이름에서 기호 코드를 생성하는 함수 $arPropArray = Array("CODE" => $transName."-".$ar_res["ID"],);/ /완성된 코드에 "접두사"를 추가하려면 - "-id" $el = new CIBlockElement; $res = $el->Update($ar_res["ID"], $arPropArray);//결과 쓰기, 덮어쓰기 이 요소에 대한 코드 echo $ transName."-".$ar_res["ID"]." 
"; //결과 출력) echo "
"; } ?>

문자 코드의 성공적인 생성에 대한 메시지를 더 이상 받지 않을 때까지 별도의 파일 또는 Bitrix 관리자 패널의 php-console에서 php 스크립트를 여러 번 실행합니다. 결과적으로 라틴 문자열이 해당 NC 형식으로 "문자 코드" 필드에 나타납니다.

어린이용 스키: lyzhi-detskie
LEGO 장난감: toyrushka-lego

발행일: 2011년 12월 12일

요전날 Bitrix에서 "가구 카탈로그" 정보 블록의 섹션 및 요소에 대한 문자 코드를 생성해야 했습니다.

문자 코드섹션 또는 정보 블록 요소에서 비트릭스에서? Bitrix에서 정보 블록의 요소(섹션)의 기호 코드는 니모닉 식별자, 문자 집합(라틴 문자 및 숫자)입니다. 이 니모닉 식별자는 링크 주소를 형성하는 데 사용할 수 있습니다. 동적 페이지그 자리에서. 예를 들어 "덮개를 씌운 가구" 섹션의 "Sofa Cosmos" 요소에 "divan-cosmos"라는 문자 코드가 있는 경우 사이트의 링크는 "/catalog/myagkaya-mebel/divan-cosmos"와 같이 표시될 수 있습니다.

그것은 급습으로 이루어지며 주요 질문은 음역 방법이었습니다. 첫 번째 생각은 실제로 어떤 종류의 방법을 작성하는 것입니다. 그녀는 즉시 그것을 해산했습니다. 간단한 이유는 - 결국 이러한 문자 코드는 CMS에서 어떻게 생성됩니까? 또한 생성 방법. 그래서 방법이 있습니다! 네, 그렇습니다.

그런게 있다 간단한 기능, 어떤 이유로 아직 에 설명되지 않은 공식 문서비트릭스 API로 (이 기사를 작성하는 시점(2011년 12월) 문서에는 언급이 없었습니다.)

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

이 함수는 문자열을 음역합니다. $str혀에서 $lang매개변수 포함 $params.

배열의 매개변수 $params:

새 버전의 커널(11.5.2에서 본)이 나타났습니다. 새 매개변수 "safe_chars", 기본값은 ""이고 "use_google"도 주석 처리되며 기본값은 false입니다.

사용 예:

"-","replace_other"=>"-"); $trans = Cut::translit($name,"ru",$arParams); 에코 $trans; ?>

UPD.댓글에서 질문을 받았습니다.
"정보 블록을 가져올 때 CNC가 생성하도록 Bitrix에서 무엇인가를 간단한 방법으로 처방하는 것이 가능합니까?"
질문이 잘못되었고 이해하기 어렵습니다. 그러나 특별한 경우로 그러한 예를 들겠습니다.
작업은 CSV에서 무역 카탈로그를 가져올 때 상품에 대한 문자 코드를 생성하는 것입니다.

"-","replace_other"=>"-"); $trans = Cut::translit($name,"ru",$arParams); $arFields["코드"] = $trans; ) ) ?>

따라서 CSV 파일에서 가져올 때 기호 코드가 자동으로 생성됩니다(이름에서 음역).

중요 UPD2.

그들은 음역이 작동하지 않는 질문을하기 시작했습니다. 주석을 참조하십시오. 해결하기로 결정했지만 현재 또는 이전 프로젝트에서 문제를 재현할 수 없습니다. 모든 것이 정상입니다. 하지만 사람들은 그렇지 않습니까?

해결책!

문제는 인코딩에 있습니다. .htaccess에 추가:

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

이것이 도움이되지 않으면 어떻게해야합니까?"사이트 확인"페이지의 관리자 패널로 이동하여 확인을 시작합니다. 잘못된 인코딩에 대한 메시지가 수표에 남아 있어도 낙담하지 마십시오. 이러한 설정을 수정하려면 호스트에 문의하거나 표준 음역 기능을 잊어버리고 직접 작성해야 합니다. (또한 인코딩으로 인한 다른 모든 결함에 놀라지 마세요).

각 문자가 7비트로 인코딩된 표준 국제 문자 코드입니다. 통신 주제, 기본 개념 EN ISO 7 ...

ISO-7 코드- 각 문자가 7비트로 인코딩된 표준 국제 문자 코드(ISO 646 1973). 미국에서는 이 코드의 버전을 ASCII라고 합니다. [E.S. Alekseev, A.A. Myachev. 컴퓨터 시스템 공학의 영어 러시아어 설명 사전. 모스크바 1993]… … 기술 번역가 핸드북

코드(디지털 컴퓨터에서)- 컴퓨터의 코드, 컴퓨터에서 정보를 표현하기 위한 기존의 기호 시스템. 각 K.는 자신의 알파벳 문자를 사용합니다. 대부분의 알파벳의 경우 알파벳은 2자이거나 2자 알파벳의 문자로 구성됩니다. K.의 물리적 형태는 캐릭터에 따라 다릅니다 ... ...

IATA 항공사 코드- IATA 항공사 코드 국제 협회에서 항공사에 할당한 2자 또는 3자의 고유 식별자 항공 운송(IATA). 이 코드는 ... ... Wikipedia에 있는 협회 본부에서 IATA 결의안 번호 762에 따라 할당됩니다.

코드- 나(프랑스어 코드, 라틴어 코덱스 법전)는 다양한 정보의 전송, 처리 및 저장(암기)을 위한 기존 기호(기호) 시스템입니다. 코드 문자의 마지막 시퀀스를 단어라고 합니다. 다양한 캐릭터의 수, ... ... 위대한 소비에트 백과사전

라딕스-50- 하나의 16비트 단어에 세 글자를 쓸 수 있는 문자 코드. 주로 미니 컴퓨터, 주로 PDP 11 제품군(SM 컴퓨터)에서 파일 이름을 저장하는 데 사용되었습니다. 파일 시스템 OS RT 11 및 RSX 11, 모듈 이름 ... ... Wikipedia

에스콘- (Enterprise Systems Connection) IBM zSeries 서버와 IBM zSeries 서버 간의 정보 교환을 제공하는 파이버 채널 인터페이스 주변기기(또는 다른 서버). 아키텍처 서버에서 처음 사용 ... Wikipedia

주소- n., m., 사용. 종종 형태학: (아니) 뭐? 무엇을 위한 주소? 주소, (참조) 무엇? 무엇의 주소? 무엇에 대한 주소? 주소에 대해; pl. 무엇? 주소, (아니) 무엇? 무엇을 위한 주소? 주소, (참조) 무엇? 주소, 무엇? 무엇에 대한 주소? 주소에 대해 1. 누군가의 주소 ... ... 사전드미트리에바

작업 ID- 실행 중이거나 실행할 준비가 된 작업에 할당된 문자 코드입니다. [도마레프 V.V. 안전 정보 기술. 시스템 접근 방식.] 주제 정보 보안 EN 작업 식별자 ... 기술 번역가 핸드북

파스칼(프로그래밍 언어)- 이 글이나 섹션은 수정이 필요합니다. 파스칼에는 모듈, OOP 및 기타 새로운 트렌드가 없습니다. 확장에 대한 설명은 해당 기사에만 있어야 합니다... Wikipedia

파스칼(언어)- Pascal 의미론: 절차 실행 유형: 컴파일러 도입 날짜: 1970 저자: Niklaus Wirth Pascal은 범용 고급 프로그래밍 언어입니다. 가장 유명한 프로그래밍 언어 중 하나는 널리 ... ... Wikipedia

서적

  • 어구의 언어 및 문화적 방법. 문화 코드, M. L. Kovshova. 논문은 어구 단위에 대한 언어 문화 연구에 전념합니다. 국가의 가치 방향을 비유적으로 저장하고 전달하는 언어 기호 ... 1053 UAH에 구매(우크라이나만 해당)
  • 어구의 언어 및 문화적 방법 문화 코드, Kovshova M.