Curso de PHP – Aula 70 – Parâmetros por Referência II – eXcript

안녕하세요, 모두가 우리 PHP 과정의 또 다른 에피소드에 오신 것을 환영합니다! 그리고 이걸로 수업을 계속할 것이며, 우리는 매개 변수를 참조로 전달할 수 있습니다 과거 수업에서 우리는 간단한 과제가 어떻게 작동 하는지를 배웠습니다

멤버의 사본이 대입 연산자의 오른쪽에 만들어진 다음 할당 연산자의 왼쪽에있는 멤버에 할당됩니다 우리는 또한 우리는 변수의 메모리 주소를 지정하고자한다면 변수 이름 앞에 상용 "e"를 붙이십시오 이제 우리가 할 일은 예제입니다 그러나 우리는 과거 수업에서했던 것과 비슷하게 기능을 사용했습니다 처음에는, 우리는 "a"라는 변수를 선언 할 것이고 우리는 그 변수에 3 개의 원소를 가진리스트를 할당 할 것입니다

세미콜론으로 지시를 끝내십시오 이제 우리는 다음과 같은 함수를 정의 할 것입니다 name "func ()"을 정의하고 매개 변수를 전달해야 함을 정의하자 이름 매개 변수 "arg"를 정의합시다 그런 다음 키를 열고 닫은 다음 코드가 있습니다

우리는 "$ a"라는 이름의 변수를 선언하고 그것에 배열을 할당합니다 그런 다음, 우리는 함수를 선언하고, 함수의 이름을 "func ()"로 지정하고 그 함수를 정의합니다 매개 변수를 받아야합니다 보시다시피 매개 변수 변수가 정의됩니다 정상적인 변수로 우리의 목표는 이제 변수로 이동하는 것입니다

"func ()"우리의 배열 "a"의 참조, 즉 우리가 복사본을 전달하는 대신에 우리는 우리의 함수 인 Array 참조로 이동할 것입니다 이것을 위해 가능하다면, 우리는 우리 함수의 주장을 정의 할 것이고, 그것은 참조를받을 것이며, 사본 자체는 아닙니다 이를 위해 "e"광고, 앞 매개 변수 이름의 이것이 우리가 PHP로 말한 방식입니다 변수의 복사본이 아닌 참조를받습니다

일단 이것이 끝나면 우리는 인쇄 할 것입니다, 우리의 매개 변수 "arg"에 포함 된 모든 값, 즉 print 참조로서 건네받은 변수의 값 이를 위해 우리는 함수를 사용할 것입니다 "print_r ()"매개 변수 "$ arg"를 출력한다고 가정 해 봅시다 이제 우리는 함수 func () 함수를 호출합니다 그런 다음, 우리는 "func ()"함수를 호출 할 것이고 매개 변수, 변수 "$ a", 문장을 끝내기위한 세미콜론 마지막으로, 우리의 배열 "$ a"를 인쇄 해 보겠습니다

"print_r ()"그리고 변수 "$ a"를 세미콜론으로 전달합니다 지시를 끝내라 그래서 우리는 Array를 정의하고이를 우리의 변수 "$ a" 그런 다음 "func ()"함수를 정의하고 매개 변수를 받아야합니다 그러나 참조를 받고 싶다고 알려드립니다

매개 변수로 전달되는 변수의 복사본이며 복사본이 아닙니다 블록에서 우리 함수 "func ()"의 배열을 출력합니다 이것은 "func ()"라는 이름의 배열을 호출하고에 매개 변수로 전달하여 이루어집니다 우리의 변수 "$ a" 마지막으로, 포함 된 모든 값을 출력합니다

우리의 배열 "$ a" 이제 실행 해 보겠습니다 정의가 콘솔에 여기에 인쇄되었습니다 2 개의 배열 중 하나이며, 우리가 볼 수 있듯이, 두 개의 배열은 동일합니다 이제 우리는 무엇을 할 것인가? 할 일은 "arg"매개 변수에 의해 전달되는 요소를 변경하는 것입니다

그런 다음, 여기에 우리의 매개 변수 "arg", 달러 기호 "arg"를 정의합시다 우리가 원한다고 가정 해 봅시다 index 요소를 1로 변경하십시오 즉, 우리는 원하는 것을 말합니다 우리의 배열 "arg"의 요소 1을 변경하십시오

그런 다음, 요소 1에 값 5를 할당하고, 세미콜론으로 지시를 끝내십시오 우리는 그것을 처형했습니다 보시다시피, 2 개의 배열이 인쇄되었지만 값이 다른 경우이 문제가 발생합니다 우리는 변경을 한 후에 배열을 인쇄해야합니다 우리는 다시 달릴 것입니다

우리가 볼 수 있듯이, 두 배열은 모두 변경되었습니다 즉, 매개 변수로 전달 된 배열과 "$ a"배열에는 해당 요소가 있습니다 1이 바뀌 었습니다 왜 우리는 1 개의 Array에서만 작동합니다 즉, 언제 우리는 Array "arg"요소 1에 다른 값을 할당합니다

우리는 사실, 7 행에서 여기에 정의 된 Array의 요소 1을 변경합니다 함수 "func ()"를 호출 할 때, "$ a"라는 배열을 참조로 전달합니다 즉, 우리는 함수 정의에서 우리가 원하는 것이라고 말했습니다 그 값의 복사본이 아닌 변수 참조를 받는다 그런 다음, 모두 우리가 변수의 참조를 전달하고자 할 때, 우리는 변수 매개 변수 앞에있는 상업용 "e"문자가 정의됩니다

단순히 우리는 우리 함수를 통해 전송되는 모든 값을 "&" "func ()"는 값의 복사본이 아니라 참조를 보낼 것입니다 같은 우리는 참조로 값을 전달할 수 있습니다 참조, 즉 반환 함수를 통해 참조를 전달할 수 있습니다 변수의 따라서 참조를 반환하는 것이 가능하도록하려면 함수 이름 앞에 & 문자가 붙습니다

즉, 우리는 변수 "return"문과 함께 정의한 변수의 경우, 가치가 아니라 오히려 당신의 참조 그래서, 우리가 시험을 치러 가자 여기에 Array를 복사하고, 함수 내에서 같은 것을 정의하고, 삭제하겠습니다 이 매개 변수는 이제 값을 반환하는 것이 목표이므로 여기에서 변수 "$ a"를 정의하고,이 행을 지우고, 마지막으로 정의하고, 변수 "$ a"의 참조를 반환해야하며 세미콜론으로 끝나야합니다 지시

여기서 변수 "$ a"를 출력해야하며 우리의 변수는 출력하지 않아야합니다 변수 "$ arg" 그래서 우리가 한 것은 "func ()"라는 함수를 정의하는 것이 었습니다 우리는 $와 같은 함수 이름 앞에옵니다 이런 식으로 우리는 함수가 반환하는 값은 변수의 참조가됩니다

단순히 변수 사본이 아닙니다 이 작업이 완료되면 name "$ a"를 만들고이를 Array에 할당하면 모든 요소가 인쇄됩니다 우리 배열 "$ a"의 배열을 반환하고 마지막으로 "$ a"배열을 반환합니다이 경우 여기서는 우리는 배열 "$ a"에 대한 참조를 반환 할 것입니다 함수 이름에는 $가 붙습니다

이제 15 행으로 가자 그 값을 지우겠다 여기에 값 이름 변수를 정의 해 보겠습니다 함수를 호출하면 변수 값의 값을 출력해야합니다 그런 다음 우리가하는 일은 값 이름 변수를 정의하고 그것에 할당하는 것입니다

함수가 반환하는 값, 즉 우리가 호출 한 값 함수 이름 "func ()"과 값 이름 변수에 반환 된 값 다음으로, 우리는 단순히 우리의 변수 값 그러나 우리 모두 알다시피, 우리의 함수 "func ()"는 리턴하지 않을 것입니다 변수의 복사본이지만 오히려 참조를 반환합니다 그래서 무엇을 위해 참조가 반환되고 해당 참조가 value 변수에 할당되면 우리는 함수를 호출하기 전에 &를 써야한다 우리는 변수 값에 대한 참조를 할당하고자하는 PHP를 실행해야합니다

그리고보세요, 우리는 2 개의 배열을 인쇄했습니다 둘 다 같은 항목을 포함하고 있습니다 즉, 우리는 우리의 함수가 Array의 참조를 반환하고 그것의 사본 자체 그래서 그것입니다 여러분! 이 수업에서는 우리가 배우고, 우리가 참조로 값을 전달할 수있는 방법과 우리가 할 수있는 방법 함수에 의한 참조를 돌려 준다 그게 다야, 너를 우리 다음에 만날거야

수업, 고마워요 나중에 보자, tchauuuuu !!!

PHP7 – זאב סורסקי

오 안녕하세요, 저는 저는 쇼와 함께 시작할 것입니다

나는 누구이며, 내가 무엇인지 그래서 나는 세 딸이있다 그것은 나에게 놀라운 변명을 제공합니다 (청중의 메모 : 코끼리는 어디서 얻나요?) 수년간 수집하십시오

충분한 인내심과 충분한 돈이 있다면 그것들은 모두 한 가지 형태로 얻을 수 있습니다 당신이 훔쳐야 할 단 한가지는 그것이 오직 하나의 세계를 가지고 있다는 것입니다 누군가에 대한 이야기, 나중에 원하면 나중에 둘째, 화면을 보는 방식으로 이동해야합니다 알았어 그래서 정말로

3 명의 소녀는 나에게이 스타일이나 스타일로 할 일을하는 대단한 변명을한다 하지만 때로는 그들도 그들과 놀아요 나는 아마추어 사진 작가로서, 거의 모든 곳에 카메라와 렌즈를 넉넉하게 매달고 다니고있다

나는 매운 음식에 대해 그녀가 아마 미친 듯이 정신병 학 섹션이있을 수 있습니다 그렇다면 거기에 있습니다

저는 12 살 때부터 프로그래머입니다 꽤 오래 전이었습니다 처음에는 그것이 기본 언어였습니다 제 첫 번째 프로그래밍 언어였습니다 마지막으로 내가 빛을 보았고 PHP에 C ++로 CGI를 개발하기 시작했습니다

관중의 누군가가 나가기 위해 나간 건지 모르겠지만 네가하지 않기를 바란다 간단히 말해서 나는이 PHP 프로젝트에 어떻게 참여 했는가? 그래서 이것은 실제로 Andy Gutmanns와 제가 전에 이야기했던 이야기입니다

거의 20 년 동안 우리는 Technion, Computer Science 그리고 연구 과정에서해야 할 일 중 하나는 실제로 프로젝트, 실용적인 프로젝트입니다 당신은 그 중 두세 가지를해야합니다 그리고 우리는 프로젝트를 찾고 있었고, 우리는 세계에서 가장 열심히 일하는 학생들이 아니 었습니다

그래서 우리는 너무 많은 투자를 할 필요가없는 프로젝트를 찾았습니다 그리고 그 중 하나를 발견했습니다 프로젝트가있었습니다 1998 년, 온라인 장바구니 개발 프로젝트 그런 다음 Technion에서 5 점 프로젝트로 간주됩니다 이 기관에 입회 한 영광과 기쁨을 가졌던 사람들에게는 많은 것이 있습니다 그리고 우리는이 프로젝트를 수행했고 그 당시 NetVision에서 일하고있었습니다

당시 NetVision의 웹 개발 팀의 절반이었습니다 내 말은, 나랑 다른 사람 그리고 저는 PHPFI라는 언어를 알고있었습니다 내가 C ++, C # 및 C ++로 개발했다고 말했기 때문에 결코 사용하지 않았습니다 또한 매우 자랑스러워했습니다 그처럼, 어색한 청년 그러나 제 동료로부터 PHPFI라는 언어가 있다는 것을 알았습니다 동료가 얼마나 쉽고 빠르게 개발할 수 있었는지 매우 흥분했습니다

그것으로 웹 애플리케이션을 수행하십시오 그래서 Andy에게 "우리는이 장바구니 프로젝트를 듣고 있습니다 우리는 PHPFI로 5 포인트 프로젝트를하고 있습니다" "그들은 tic-tac으로 끝내고 그래서, 너는 너무 많이 투자 할 필요가 없다" 우리는 프로젝트를 선택했다 1 단계, 코드에 접근하기 오래 전에 학계에서 프로젝트 작업을하는 영예를 가진 사람들을 위해 문서 작성 감독자와 많은 문서 및 협의 사회자 (여성)이 경우에는 그리고 어떤 도구가 사용될 것인지, 어떻게 도구를 만들고 도구를 선택하는지 등을 설명하십시오

그리고 우리는 그녀에게 PHPFI를 사용할 것이라고 말했습니다 그리고 물론 그녀는 그것에 대해 듣지 못했고, 그 당시에는 거의 사용되지 않았고 그 이상으로 우리는 여섯 쌍의 학생 중 한 명이었습니다 프로젝트에서 누가 일했는지, 다른 다섯 명은 PERL을 사용했다 이 구식 시대를 기억하는 PERL은 당시 웹에서 역동적 인 발전의 여왕이었습니다 누구나 PERL을 사용했고 갑자기 PHPFI를 사용하려고합니다 그녀는 그것에 대해 매우 반대했고, 그녀는 그것이 좋은 생각이 아니었고, 표준 도구가 아니 었음을 우리에게 확신시켜 주려고했지만, 결국 그녀는 동의했다

경고를 받고 문제가 발생하면 학년의 일부가 될 것입니다 즉, 그 이후에 우리가 그녀에게 오지 않을 것이라는 의미입니다 도구가 없다는 것을 쉽게 물어볼 것입니다 좋아, 그게 우리 선택의 일부 야 이 단계에서 더 많은 문서를 작성한 다음 문서를 작성하고 마침내 어느 시점에 개발하게됩니다

나는 우리가 아파트에 있었다는 것을 기억한다 앤디가 하이파에 임대 한 아파트에 있었다 우리는 앉아서 PHPFI 코드로 손을 더럽 혔습니다

30 분에서 45 분 사이에 우리는 우리의 첫 번째 중요한 문제를 접하게됩니다 우리는 어떤 종류의 성도들을 경고하고 있습니다 경고 경고 우리는 그곳에서 무엇이 잘못되었는지 알아낼 수 없습니다 코드를 다시 읽고, 코드를 다시 읽고,보고, 조금만 놀고, 여기서 무슨 일이 일어나고있을 때 무엇을하고 있는지 알 것입니다 조금 이상한 것, 누군가가 가진 것이 아니라면

누군가가 그런 경험을 한 것 과거의 그런 경험 몇 분 후에 우리는 코드에서 실제로 괜찮다고 결론을 내립니다 PHP가 그 자체를 이해하지 못한다는 것입니다 그는 알아낼 수 없다 문제는 언어가 아니라 코드에 있습니다 우리가 C ++ 언어가 아닌 C 언어가 아닌 다른 언어에서 이러한 상황을 경험 한 것은 처음이라고 생각하기 때문에 우리를 많이 놀라게했습니다

파스칼에서는 아닙니다, 우리는 언어가 스스로에게 어떤 종류의 분리를 겪었던 상황을 결코 경험하지 못했습니다 그리고 나서 매우 흥미로운 일이 일어났습니다

그날은 사소한 것처럼 들리지만, 그다지 사소한 일이었습니다 이 언어 인 PHPFI는 오픈 소스 였고, 우리가 보았고, 그 아래에서 무슨 일이 일어나고 있는지, 문제를 해결하려고하는지 그리고 그게 우리가 한 일이고, 우리는 코드를 열었고, 우리는 이해하려고 노력했습니다 그것은 아니 었습니다

그것은 아닙니다 (???) 거기에는 비교적 복잡한 것도있었습니다 우리는 그것이 어떻게 지어 졌는지를 이해하려고 노력했고, 곧 우리는 상원과 사진에 대한 책임이있는 지역에 도착할 수있었습니다 우연히 관중에 자동차 정비사가 있습니까? 누군가 아마추어 정비사 요? 차에 무엇이 잘못된지 누가 알 수 있습니까? 예, 좋습니다 그 감정, 우리가 PHPFI의 창자에 들어간 것을 본 느낌을 묘사하는 나의 방법은, 마치 당신이 그것을 발견 할 것 같은 엔진을 회전시키는 쥐 한 쌍을 가지고 있고 연료에 붙어있는 것이 아니라 그런데이 문제는 자동차 정비사가 아니어야합니다 정말 좋은 눈을 가지고있는 사람 만 있으면됩니다 우리는 PHPFI가 실제로 쓰여졌 음을 발견했습니다 표준이 아니고 비효율적이며 같은 호흡에서 당신이 알아내는 것만 큼 놀랍습니다 네가 운전하고있는 차는 항상 정말로 두 마리의 쥐가 움직일 수 있다는 것이다 그럼에도 불구하고 인상적이다 이 시점에서 우리는 두 번째, 한 방울로 연락을했습니다 이 단계에서 우리는 오늘날 우리에게 사소한 것처럼 보이지만 그다지 사소한 것이 아닌 다른 솔루션을 작성한 사람에게 연락했습니다 우리가 만든 인터넷을 통해 언어를 쓴 Rasmus Lerdorf에게 연락하십시오 이것을 1998 년의 상황과 비교하거나 심지어 ASP 버그를 발견하면 오늘과 비교하십시오 좋아 행운을 빌어

그래서 우리는 방금 이야기를 나누었습니다 언어와 단어를 더 세밀하게 묘사 한 사람과 직접 접촉했습니다 섬세한 사람 인지도 모릅니다 우리는 그에게 물었다 "대체 도대체 어떻게 생각하니?" 뭐

왜 그렇게 쓰셨 어? 그리고 그는 우리에게 아주 빨리 대답했습니다 "들어 봐, 나는 내 용도로 쓴거야 나는 그것을 세상에 열어 주었다

아마도 나는 다른 사람들이" "그들은 그것을 사용할 것이지만 나는 컴퓨터 과학자가 아니라, 나를 위해 일한다 그것은 나에게 어울린다, 너를 적응시키지 않는다 – 사용하지 말라" 이 시점에서, 앞에서 언급했듯이 우리는 학생들이하지 않았던 일을하기위한 어떤 변명도 부지런히하지 않았습니다 테크니온 (Technion)으로 걸어가는 것을 포함하지 말고 시험과 숙제 등을 배우십시오 우리는 긍정적 인 요인을 가지고 있습니다

그래서 우리는 "지난 학기에 우리는 컴파일 과정을 하나했는데, 이는 우리가 이미" "전문가들은 우리가 더 잘 쓸 수 있는지 알아보기 위해 노력할 것" 그리고 실제로 우리는 그것을 시작했으며 약 반년 동안 우리는 실제로 연구에 투자 한 많은 시간을 우리에게 빼앗 겼습니다 약 6 개월 만에 사실 PHPFI 사촌의 일종으로 정의 할 언어의 처음부터 작성된 버전이있었습니다

당신이 PHPFI 기간에서 가져 와서 오늘의 PHP에서 실행하려고 시도하는 것은 아무것도 실행되지 않습니다 교회의 성향, 변수의 Xantax에 쓰여지는 기능 모든면에서 다소 적지 만 여전히 상당히 많습니다

상황은 PHPFI에서 가져 왔고 우리는 기본적인 수준에서 작동하는 뭔가를 가지고 있었고 짧은 지름길로 당신을 지치지 않았습니다 우리는 라스무스 레르 도르프 (Rasmus Lerdorf)와 다시 연결하여 "들어라, 5 년 후에 개발 한 것을 떠나는 방법에 대해" "우리와 함께이 버전에서 작업하고 PHP의 다음 공식 버전으로 바꾸십시오" 그리고 놀랍게도, 우리는 그가 우리에게 지옥에 갈 것이라고 확신했기 때문에 큰 놀라움에 그는 동의했고 심지어 행복했습니다 그는 그런 일이 일어날 것을 기대한다고 말했다 이것이 PHP 프로젝트가 태어난 과정입니다

물론, 거의 20 년의 커다란 진화 이후, 그러나 오늘날까지도, 실제로는 한 사람의 프로젝트가 아닙니다 언어는 예상대로 함수를 사용하여 현대적인 언어의 모든 기능을 갖춘 완벽한 언어입니다 객체 등으로 그리고 프로젝트와 함께 오늘은 이미 기여한 사람이 수백 명이고이 프로젝트를 둘러싼 매우 강력한 커뮤니티입니다 이 사진은 실제로 PHP를 개발 한 모든 사람들의 첫 번째이자 마지막 시간의 사진입니다 PHP를 개발 한 모든 사람들이 실제로 한 곳의 물리적 인 장소에 있었지만 일부 교회의 성지에서 일어났습니다 모든 민족의 교회가 예루살렘에서 부름받는 것처럼 보입니다 그래서 우리는 2000 년 초 PHP로 작업 한 대부분의 개발자들이 실제로 이스라엘에 실제로 대면 회의를 계획했습니다

PHP4로 세상을 어떻게 인수 할 것인가? 그것은 PHP4보다 조금 앞선 것입니다 이것은 오늘날부터 주어진 시간에 PHP의 모든 개발자를 같은 장소에 두는 것이 더 이상 현실적이지 않습니다 정말 수백명의 사람들 이었기 때문에 (청중의 코멘트) 라스무스 레르 도르프입니다 Andrei Ziaski가 있습니다 그게 다예요 여기 기증자 인 Steve Bucken, Andy Gutmanns와 그의 아내가 내 동료입니다 우리는 PHP3를 실제로 만들었습니다 그리고 함께 4와 5 우리는 곧 돌아올 것입니다 그것은 Monty Vedenius입니다

My name은 MySQL을 작성한 사람입니다 그는 PHP에 기여하지는 않았지만 매우 강력한 시너지 효과가있었습니다 이 두 프로젝트 사이에서 우리는 그를 초대했습니다 나야, 그 사람은 그건 아니에요 이것도 Monty의 동료 인 MySQL의 도움이되었습니다 그리고이 사람 만이 여기에있는 유일한 사람입니다 글쎄, ifat는 코드를 작성하지 않았지만 그는 실제로 회의에 연결되지 않은 유일한 사람입니다

그는이 남자의 상사이고 그가 그걸 어떻게 활용할 수 있는지보고 싶었고 그가 할 수 없다는 것을 깨달은 후에 그는 달려 가려고했습니다 네브래스카 주지사가되었지만 기쁨을 감추지 못했습니다 그럼에도 불구하고 대통령 선거가 있은 후에 네브래스카 주지사 알았어 지금 PHP는 매우 인기가 있습니다

휴식을 취하기 전에 강의가 나에게 약간의 질문이 있기 때문에 PHP가 매우 인기가 있습니다 PHP의 인기에 대한 모든 종류의 지표가 있습니다 Mantecaf의 통계, Google의 통계 사이의 무언가에 대해 말하기 당신이 물어 보는 사람과 기준에 달려 있지만, 인터넷상의 사이트 중 30 ~ 75 %는 PHP는 물론 WordPress, 도서 수, 컨퍼런스 수, 개발자 수에 대한 견적이지만, 모든면에서 이 지표들 내가 PHP의 인기를 가장 강력하게 입증 한 것은 2008 년 나에게 일어난 일입니다 나는 결혼했고 남아메리카에서 신혼 여행을 갔다 우리는 부에노스 아이레스로가는 귀찮은 비행기를 타고 도착했다 우리는 호텔에 도착했다 호텔을 아는 사람은 아무도 없다고 생각합니다

이것은 호텔이 실제로있는 곳입니다 작고 별이 두 개나되는 것 도착, 리셉션에 도착 그래서 모든 것이 인터넷 상에있는 것은 아니 었습니다 그리고 컴퓨터는 그 다음에 채워야했습니다 그런 식으로 양식 입구에 양식을 작성한 다음 양식을 작성하고 컴퓨터에 입력하기 시작합니다

양식을 입력하면 양식이 보입니다 그리고 나에게 묻는다 "Ziv Suaski?"Ziv은 나의 국제적인 이름이다 아무도 나를 늑대라고 부를 수는 없지만 괜찮아 "Ziv Suessky?" – 네? "PHP의 사람?" 그래서 나는 정말로 들어 섰습니다

긴 비행 후 Santo의 15 성급 호텔에서 어떤 충격을 받았 는가, 부에노스 아이레스에서 어떤 이웃인가 그리고 그 남자는 그가 정확히 아니란 걸 깨달았습니다 나는 알고 있습니다 하이테크를 보지 말고, 그는 나에게 묻습니다 그는 나를 안다 그는 나에 대해 듣고, 그는 PHP를 안다

그래서 그가 개발하고있는 것으로 밝혀졌습니다 PHP에서 그의 이웃을위한 소셜 네트워크, 그게 야간 일, 어쩌면 다른 방향 일 수도 있습니다 그의 일일 호텔 작업은 야행성입니다 하지만 PHP에 익숙하고 가장 강력한 지표입니다 숫자는 모두

괜찮습니다 언제 세계의 반대편에있는 호텔에서받은 사람이이 PHP 개발자이기도합니다 미안해 (청중의 코멘트) 오, 사실, 우리가 처음에이 호텔에 있었을 때 우리가 곧장 갈 때 우선,이 호텔이 정말

아주 아주 고급스럽지 만별로 유명하지 않습니다 그러나 우리가이 여행 후 되돌아 가게되었을 때, 예, 우리는 더 좋은 방을 얻는다 나는 그것에 대해 생각하지 않았고, 그것이 그것 때문인지 아닌지 나는 모른다 좋은 PHP가 실제로 시작된 방법에 대한 설문 조사가 끝난 후, PHP의 진화에 대해, 내가 참여한 최소한의 버전에 대해 조사했습니다 그래서 PHP3는 우리가 오늘날 가지고있는 언어, 적어도 PHP3 코드, 적어도 기본 레벨을 언급 한 첫 번째 버전입니다

PHP7에서도 실행됩니다 그것의 많은 것은, 물론 변화가 있었고, 거기에 많은 것들이 있었고, 모든 것들이 아닌 모든 것들이 망가졌지만, 주류의 것들 PHP7에서 여전히 실행중인 PHP7에서

나는이 말을 "PHP3 코드를 찾으러 가라"고 말하지 않기 때문에 이것이 우리가 지금까지 가지고있는 것을 우리에게 생각 나게하는 첫 번째 버전이라는 표시로서 언어가 가득차있는 것은 처음입니다 PHPFI, PHP2에서 사용 된 사람은 누구입니까? 알았어 정말로 물건이 있었다 마술 적이다, 우리는 그들을 b라고 부를 것이다 부드러운 언어로 언어가 어떻게 행동했는지에 관해서는, 표현이 없었습니다 음, 우리는 그것에 들어가지 않을 것입니다, 그것은 아주 다른 무언가였습니다 PHP3의 두 가지 주요한 점은 실제적이고 현대적인 언어처럼 작동한다는 것입니다 B) 그리고 아마도 그것이 가장 중요한 것입니다 아주 쉬웠습니다

새로운 기능 추가, 오늘과 관련된 모든 확장 기능 문제 처음으로 PHP3에서, 예를 들어, 새로운 데이터베이스를 추가하기 전에 뇌 수술은 언어 자체에서 수행되어야했습니다 내 말은, 당신은 지원을 추가하고 싶은 C 개발자 일 수 없다 어떤 종류의 데이터베이스 나 프로토콜 컴파일을 정말 이해해야했고

물론 PHP에 기여할 수있는 사람들의 수를 크게 줄였습니다 그리고 나는 이것을 다음과 같이 생각합니다 PHP3 이후에 기부액과 언어에 관련된 사람들의 양이 폭발적이었습니다

내가 생각하기에 오늘이 그녀의 모습이 그녀를 만든 것입니다 PHP4가 나왔습니다 PHP3이 '98 년에 나왔습니다

PHP4가 2000 년 5 월에 회의가 끝나고 몇 달 후에 나왔습니다 우리가 초대 한 회의 텔 아비브, 예루살렘 주요한 것은 Zand Anjin이었습니다 Zand Anjin은 오늘 우리와 함께합니다 PHP3를 개발 한 직후에 마우스의 이야기로 돌아 가면 잠시 후, 심지어 잠시 전에 그는 GA에서 나왔습니다 결론적으로 쥐를 쥐에게 업그레이드 시키거나, 모름, 그러나 아직도 그것은 적절하게 엔진이 아니었다

PHP3는 성능 측면에서 여전히 매우 느린 언어였습니다 사람들을 만든 것보다 훨씬 강력한 언어가 이미있었습니다 매우 복잡한 응용 프로그램 작성 그러나 PHP3의 시대를 기억하는 사람들은 비교적 간단하고 복잡하지 않은 어플리케이션 그 이유는 성능이 단순히 느린 것입니다 PHP4에서 우리는 두 번째 뇌 분석을 수행했습니다 이번에는 기술적으로 훨씬 더 복잡했으며 이번에는 일치를 유지해야했습니다 PHP3는 아주 대중적이었다 Zand Anjin은 정말 크게 향상되었으며 곧 보게 될 것이며 모든 종류의 새로운 능력과 세션이있었습니다 처음에는 PHP를 버전 4에 처음으로 입력 할 때 대부분 세션을 사용합니다

언어 플러그인, 디버깅, opcode 캐싱, 모든 종류의 기능 등도 입력됩니다 PHP5, 4 년 후 우리는 PHP5에 들어 가지 않은 방식으로 객체 지향 모델을 대체했습니다하지만 이전 버전에 비해서 나빴습니다 그 전에는 PHP5에서 자바 모델과 비슷한 것을 선택했습니다 이것은 여러분이나 여러분 대부분이 오늘 사용하는 모델이라고 생각합니다 그리고 성능면에서 가장 중요한 점은 우리가 성능에 해를 끼치 지 않았다는 것입니다

적어도 당신이 묻는 사람에 따라 다르지 않습니다 느리지 만 대부분의 경우 거의 같은 속도였습니다 우리가 시작한 것은 근본적으로 몇 년에 걸쳐 여러 PHP 버전의 성능을 볼 수 있습니다 우리가 시작한 것은 근본적으로 말하자면, iOS 버전에서 Apple이하는 일의 반대 모든 버전이 속도를 향상 시키려고 노력했습니다 그리고 여기서 우리는 PHP4의 최신 버전을 보았습니다, PHP5의 첫 번째 버전을보십시오 조금 다르게 보여주는 시장이 있습니다

PHP5는 4보다 조금 느리지 만 거의 동일한 속도였습니다 그러나 우리가했던 것, 우리는 많은 인프라를 갖추고 있습니다 그리고 우리가 개선 할 수 있었던 엔진 작동 방식에 대한 많은 아이디어와 많은 변화 성능, 그리고 몇 년 후에 볼 수 있듯이 PHP5

1은 이미 일부 작업 부하에서 성능이 뛰어납니다 거의 3 배가되고 성능 개선 투자 이야기는 최근까지도 계속되었습니다 1 년 전에 나온 PHP5

6에 대해서 2 년, 각 버전은 이전 버전보다 빠릅니다 보시다시피, 개선 속도는 점점 내려 가고 있습니다 우리가 여기서 말하고 있기 때문에 나는 말할 것입니다이 그래프는 성능을 보여줍니다 벤치의 일종

합성 벤치 마크의 일종 인 PHP 당신이 워드 프레스에서 벤치 마크를 실행했다면 당신은 버전과 54와 55 또는 55에서 5

6 사이의 차이를 보지 못할 것입니다 워드 프레스는하지 않기 때문에 그는 데이터베이스와 대화를하고, 계산을 너무 복잡하게하지는 않는다

우리가 합성 벤치 마크에서 개선 한 점은 WordPress에서 5 %를 제공 할 가능성이 매우 높습니다 WordPress에서는 05 %를 레벨에 제공합니다 현실에서 더 이상 그에게 관심을 기울이지 않는 사람 그리고 우리는 아홉 번째에 대해서 말하기 전에 PHP3가 어떻게 보일지에 대한 관점에서 그 것을두기를 원하는 사람들을 위해 그것은 PHP3이며 의문을 제거하기 위해 더 낮은 것이 좋습니다

네? 내 말은 벤치 마크를 실행하는 데 걸리는 초는 PHP3에서 75 초, PHP4는 이미 12 초가 걸렸습니다 그리고 PHP5-6에서는 이미 2보다 적게 찍었습니다

그래서 수년에 걸친 성능 향상 심지어 내가 오기 전에 운 좋게도 내가 여기에 대해 이야기하고 싶었던 것을 생각 나게하기 위해 여기에 슬라이드가 있습니다하지만 PHP7에 도달하기도 전에 말이죠 5와 7 사이에 숫자가 누락되어 있다는 사실을 눈치 챘을 것입니다 우리가 소수 등으로 고정되어있는 것은 아닙니다

우리는 2가 이었습니다 아니요, 2는 실제로 초기이지만 4였습니다 (청중의 코멘트) 네, 사실은 그렇습니다 하지만 우선 PHP6은 무엇입니까? 그런 일이 있었고, 그런 것이 있습니다

정말로 투자한다면 당신은 그것을 찾을 수 있습니다 그는 GA 수준으로 나간 적이 없지만 투자 된 프로젝트가있었습니다 많은 투자가있었습니다

많은 일이 투자되었습니다 실제로 PHP5를 사용하여 유니 코드를 해당 언어로 퍼스트 클래스 시민으로 변환해야했던 사람은 누구입니까? 그게 무슨 뜻 이죠? 몇 가지 예를 들자면, 여기서 독일어를 사용하는 사람은이 서신이 실제로는 이중 서한임을 알고 있습니다 그래서 당신이 strtoupper를 만들고 있다면 당신은 그것을 얻을 것입니다 내 말은, 그가 알고있는 것은

그것과의 투명한 작업이고, 여기에 누군가 그리스어로 된 어떤 것이있다 그리고 기쁨에 그것은 당혹스럽지 않지만 그것이 의미하는 것을 기억하지 않습니다 어쨌든, 당신이 strtolower를하더라도 당신은 소문자 버전을 얻을 것이다

(청중의 코멘트) 유니 코드 소리가 난다 너는 아주 무시 무시한 어조로 들린다

그것은 혁명이었습니다 그것은 뇌 수술이 아니라 뇌와 모든 정맥과 동맥 그리고 모든 것을 대체 할 것입니다 (청중의 코멘트) 미안해? (청중의 코멘트) 예, 그런 것입니다 결론은 실패한 것입니다 실패한 이유는 무엇입니까? 몇 년 간의 일을 마치고 우리는 상황이 일종의 일을하기로 결정했습니다

그리고 우리는이 성능이 단지 약 2 배 더 나빴음을 보았습니다 PHP5에 비해 상대적으로 빠르고 초기 버전에서는 PHP5와 관련이 있습니다 PHP5가 더 빠르고 더 빨라지고 있습니다 여기에서 노력을 최적화 한 후에 PHP5보다 훨씬 느린 상황에 이르렀습니다 여기, 여분의 보너스 메모리 소비도 두 배로 증가했습니다 그런 다음 서버에서 일반적으로 특정 서버에서 사용자에게 서비스를 제공하는 능력은 프로세서 속도와 메모리 양에 따라 결정됩니다 그게 메모리의 양은 실제로 더 많은 프로세스에 대한 병렬 처리를 증가시킬 수 있습니다 결론적으로 말하자면, 같은 서버에서 성능의 1/3 크기와 속도를 모두 고려할 수 있습니다

메모리 사용량 PHP5의 약 3 분의 1에 대해, 여기에 우리가 결정했습니다 실속을 닫고이 방향을 포기하는 것입니다 그것에 대해 더 읽고 싶은 사람은 Andrey Zamyavsky가 매우 영리한 프리젠 테이션을하고 있습니다 이 슬라이드의 맥락에서이 프로젝트의 배후에있는 정신은

성공하지 못했고 여기에 주소가 있습니다 너는 접근 할 수있다 나는

좌절감을 느껴야한다 프레젠테이션 슬라이드 중 하나는 죽음의 시간이다 공식적으로 그가 보낸 이메일을 보냈을 때이다

그는 그것이 죽었다고 결정했다 그것은 불과 6 년 전이었다 그리 오래되지 않았다 (청중의 코멘트) 잠깐 뭐라 구요? 그래, 알았어 그런데 왜 23 초가 아니라, 더 필요했다 다른 11을 더합니다

그렇지 않습니까? 34 초 남았습니다 11시 11 분 11 초 였을 것입니다 그렇지 않습니까? (청중의 코멘트) 나는 그에게 말할 것이다 어쩌면 우리는 그것에 대해 뭔가를하려고 노력할 것입니다 좋은 우리는 PHP7에왔다 PHP5 성능의 진화가 성능 측면에서 어려움을 겪기 시작하면서 개선 할 수 없었습니다

PHP5 프레임 워크에서 중요한 성능 우리는 실제로 JIT가 의미하는 것이 무엇인지 아는 Just in Time Compilation의 방향으로 가려고했습니다 Just in Time Compilation 알았어

대부분의 경우, 항상 사용하고, 모든 곳에서 오늘 사용하고, 브라우저에서 사용하고, 전화로 사용하십시오 "Just In Time Compilation"은 비교적 일반적으로 가장 일반적인 것은 JavaScript입니다 실제로 언어를 실행하는 대신 코드 또는 코드의 모든 프리젠 테이션을 단계별로 살펴보십시오 "Just in Time Compilation"은 실제로 자바 스크립트의 일부를 취해 실제로 C 프로세서처럼 처리합니다 컴퓨터 언어 그것은 매우 진지하고 긴장이 심한 단순화이지만 20 초 만에 설명 할 수있는 유일한 방법입니다

그리고 제가 말씀 드렸듯이 이것은 매우 일반적인 전략입니다 이것은 JavaScript의 혁명을 실제로 가능케 한 것 중 하나입니다 사실, 오늘날 브라우저에서 실행되는 애플리케이션은 매우 복잡합니다 말 그대로, 심지어 때로는 수 백 번에 이르기까지, 성능을 몇 배나 향상시킬 수 있습니다 우리는 연구를 해보고, JIT를 PHP에 가져 왔습니다

바로 여기에서 볼 수 있습니다 아마도 당신은 볼 수 있습니다 실제로 얼마나 많은 사람들이 볼 수 있는지 알 수 없으므로 여기에서 벤치 마크를 읽습니다 PHP에서 JIT를 켜고 껐다가 껐습니다 그것은

동일한 합성 벤치 마크, JIT 오프 벤치 마크는 115 초, JIT는 02에 걸렸습니다

거의 6 배입니다 더 빠르고, 놀랍습니다 우리가 생각해 내고 실제 애플 리케이션을 테스트 한 작은 문제가 있었고 실제 벤치 마크 어플리케이션 우리의 첫 번째는 정말로 WordPress입니다 아무것도, 바늘이 움직이지 않았다 똑같은 속도, 때로는 바늘이 움직 였지만 그것이 움직 였다면 그것은 단지 음의 방향이었을 뿐이며, 이것은 2 ~ 3 % 적습니다 우리는이 사실을 성취했지만 아무런 성과도 거두지 못했습니다

어떠한 경우에도 우리는 현저한 성과 개선을 보지 못했습니다 우리는 당시 Intel 회사와 협력하여 왜 그랬는지 이해하려고 노력했습니다 이것은 직관적으로 비논리적이었으며 우리는 언어와 실제 응용 프로그램은 그로부터 이익을 얻지 못합니다

그리고 우리는 모든 종류의 이론을 가지고있었습니다 하나의 이론은 대부분 WordPress가 기다리는 대부분의 시간이었습니다 그것은 데이터베이스에 모두 들어 있었고 어쨌든 중요하지 않습니다 PHP와 다른 이론의 속도가 더 컸다 따라서 프로세서 수준에서 일어나는 일에 대해 낮은 수준에서 어느 것이 합성 벤치 마크에서 개선되고있는 것처럼 보이지만 실제로는 그렇지 않습니다

그리고 기본적으로 우리는 제쳐 놓으려고 노력했습니다 그리고 저는 이제 역사적인 관점으로 말할 수 있습니다이 모든 JIT 프로젝트를 던지십시오 앞으로 JIT 프로젝트의 새로운 토대가 될 완전히 다른 방향으로 나아가 야합니다 우리는 무엇을하고 싶습니까? PHP를 메모리 소비량을 줄이기 위해 너무 낮추지 않고

프로세서 기본적으로 성능, 코드 지역 및 벤치 예측 기능을 통해 성능을 크게 향상시킬 수 있습니다 알고있는 사람들을 위해 상대적으로 간단한 코드가 필요하지 않은 경우 코드 자체에 많은 메모리가 필요하지 않으며 매우 큰 데이터 구조에서도 작동하지 않습니다

그리고 우리는 어떻게 든 데이터 구조를 줄임으로써 PHP의 성능을 향상 시키려고 노력했습니다 그리고 우리는 PHP 자체의 속도에 큰 변화를 가져올 것이라고 생각하지 않았지만, 우리는 그것이 일어난 후에 우리는 JIT를 다시하고 실제 애플 리케이션에서 중요한 변화를 볼 수 있습니다 따라서 2004 년 초에 우리는이 프로젝트를 시작했고, 목표는 매우 작았으며, 메모리 소비를 줄이고 PHP와 동기화되었습니다 여기서도 광범위한 분석이 필요했는데 사실 변화의 모든 것이 필요했습니다 거기에 하나의 파일이

꽤 심각한 요인을 변경하지 않아도 PHP 소스 몇 달 안에 우리는 기본 PHP가 모든 확장이 아닌 상황 이었지만 기본 PHP 자체는 처리 할 수 ​​있었고 몇 주 후 또한 무언가를 할 수 있었고, 합성 벤치 마크를 실행했으며, 몇 주 후에 그는 또한 달릴 수있었습니다 WordPress의 유일한 홈페이지 그렇다면 우리가이 합성 벤치 마크를 실행했을 때 성능 향상을 보였지만 열정적이지는 않았지만 이미 성능 향상을 알았습니다 합성 벤치 마크에서 반드시 의미하는 것은 아닙니다 WordPress를 실행했을 때 더 재미 있었고 Dimitri Stogov 옆에 없었지만 리드를 넘어서는 사람이었습니다 이것은 그가 한 일의 대부분을 PHP7에 대해 곧 듣게 될 것입니다 그의 손가락은 10 개, 다른 발가락은 10 개입니다

그는 미안해? (청중의 코멘트) 아니요 하지만 그는 나와 함께 일하고, 나는 CTO이고, 나는 CEO가 아니며, 나는 CTO 다 그는 PHP와 관련하여 저와 긴밀히 협력합니다 그는 PHP에서 가장 중요한 캐논입니다 관객은 PHP를 자신보다 더 잘 개발하는 방법을 알고 있지만 PHP 자체를 개발하기 위해서는 아래에서부터 실행되는 언어가 앤디와 나 드미트리 스토 고브 그리고 나는 다시 그와 가까이 있지 않았지만 결과를 보았을 때 그와 비슷한 것을 보았을 것이라고 생각합니다

내 포토샵 기능은 매우 제한되어 있지만 그는 미소 지었고, 그는별로 웃지 않습니다 WordPress의 몇 가지 중요한 개선 사항을 보았으므로 첫 번째 단계에서는 성능이 30 % 향상되는 것을 보았습니다 우리는 그걸로 일반 대중에게 나갔다 몇 달 후, 우리는 그것을 공공 공동체 프로젝트로 바꾸었다 투표는 받아 들여야했다 PHP5를 계속하는 공식적인 버전으로서, 대다수의 사람들이 지원했다

원한다면 그들을 찾아서 괴롭히는 것을 환영합니다 그리고 연말에 실제로 코드를 가진 다음 PHP 버전의 기초가되었습니다

PHPNG 코드 이름과 투표 후 시제 우리는 그것을 PHP6 또는 PHP7이라고 부르기로 선택했다 무슨 일이 있었 니? 이것은 PHP7의 합성 벤치 마크입니다 시간이 지남에 따라 향상되고 향상되었습니다

우리가 바깥에 나갔을 때 우리는 일정한 속도에있었습니다 우리가 2014 년 5 월에 나간 후에 우리는 성과를 매우 크게 향상시키기를 계속했습니다 그래서 우리는 여기서 나갔다 보시다시피, 우리는 PHP7이 마침내 출시 될 때까지 성능을 거의 두 배 더 향상 시켰습니다 우리가 해낸 것들은 깊이있게 들어가지는 않을 것입니다

C 개발자들보다 흥미 롭습니다 만, 우리는 실제로 데이터 구조를 줄였습니다 보석,이 어퍼

24 Bates에서 16 Bates로 떨어졌을 때, 이것이 인상적인지는 모르지만 인텔 프로세서는 매우 인상적입니다 우리는 또한 다른 데이터 구조를 줄였으며 메모리 관리자의 성능도 향상 시켰습니다 이것은 메모리 관리자의 성능입니다

PHP7에서는 이제 어떻게 영향을 줍니까? 그래서 무엇보다도, 여기에 같은 벤치 마크가 있습니다 우리가 이전에 보았던 동일한 합성 벤치 마크 PHP3에서도 2 초에서 08 초 미만의 PHP5

6을 기준으로합니다 그러나 더 흥미로운 점은 실제 응용 프로그램에서 우리는 광범위한 변화에 대해 이야기하고 있다는 것입니다 내가 기대했던 것보다 훨씬 더 광범위하다 이것은 Badoo라고 불리는 회사입니다 러시아 회사입니다

Baidu가 아니라 다른 회사입니다 한동안 밝은 하루를 보냈던 분 스위치를 켜고 PHP5

6 클러스터에서 PHP7 클러스터로 이동했습니다 그게 그들이 본 것입니다 여러분이 여기에서 보는 것은 메모리 소비량입니다 좀처럼보기 힘들지 만, 그것은 각각 몇 메가 바이트입니다 수요가 너무 많아서 40-37 구역에서 5로 떨어졌습니다

내 말은, 7 배 적은 메모리 소비, 실행할 수있는 프로세스의 양과 성능면에서 혁신적입니다 그것은

서버의 CPU로드가 절반으로 줄어들었지만 더 큰 비밀은 클러스터에있는 서버의 양이 PHP7 자체가 절반이었습니다 X 서버 중에서 얼마나 많은 양을 찾지는 못했지만 X 서버에서 X 서버의 절반까지 내려 갔고 각 서버는 클러스터에있는 서버에 비해 반 정도 찼습니다 5

6은 성능 향상 순서의 약 4 배의 총 가치이며 확실히 인상적이며 이는 합성 벤치 마크가 아닙니다 실제로 라이브 사이트에서 5-6에서 7 사이로 이동했습니다 그건 그렇고, 그들이 가지고있는 문제에 대한 상당히 상세한 사례 연구를 발표 했었습니다 얼리 어답터가 있었기 때문에 70

0에서 몇 가지 문제가있었습니다 701에서는 702, 7

03 영역에서 통과했다고 생각합니다 그리고 인프라 스트럭처에 1 백만 달러의 비용을 절감하고 1 년에 약 10 만 달러의 비용을 절감 할 것으로 예상합니다 그리고 그것은 단지 하나의 회사 일 뿐이며, 단순히 소프트웨어를 업그레이드하는 것입니다 덜 구체적으로 나온 몇 가지 사례 연구가 Tambler의 몇 주 전에 나왔습니다 또한 그들은 변화가없는 상태에서 5

6에서 7로 이동하자 마자 일어난 일에 대한 차트를 게시했습니다 내 말은, 당신은 아무것도 얻을 필요가 없어 당신은 어떤 식 으로든 응용 프로그램을 변경할 필요가 없습니다

대기 시간은 거의 250 분의 1 초에서 100 분의 1 영역까지 감소했으며 평균 프로세서로드 시간은 약 절반으로 줄어 들었습니다 나는 생각보다 더, 2/3 서버의 속도가 두 배 빨라 졌을뿐만 아니라 절반도 사용했기 때문에 BADO가 보았던 것 그리고 우리는 돈을 내지 않았다, 아니 은색 봉투는이 견적에 관여하지 않았다

PHP5 대 7의 다른 벤치 마크는 Zend Framework입니다 PHP7은 실제로 매우 강력합니다 실제로는 복잡한 객체 지향 코드 인 젠드 프레임 워크 (Zend Framework)이며 2 배 이상의 성능을 보입니다 그리고 다시 엄청난 메모리 소비 감소 WordPress는 또한 2 배 이상의 시간을 가진 영예의 장소이기도합니다 일반적으로 성능이 2 배 향상 될 것으로 기대할 수 있습니다 그리고 대기 시간의 감소는 단순히 5에서 7 로의 전환입니다

필자는 개인적으로 모든 분야의 소프트웨어 업그레이드를 기억하지 못합니다 PHP 4를 제외하고는 이렇게 된 것 같습니다하지만 그렇지 않습니다

HHVM에 대해 들어 본 사람은 누구입니까? 그래서 이것은 HHVM에 대한 비교입니다 HHVM Facebook이 개발하고있는이 PHP 버전은 포크입니다

포크도 아니고 실제로는 또 다른 프로젝트는, 특정 코드를 사용하기 때문에 PHP와 공통 코드가 없다고 말할 수 없기 때문에 정의하기가 다소 어렵습니다 PHP에서,하지만 기본적으로 Facebook이 사용하는 언어의 완전히 다른 적응입니다

자체 서버와 언젠가는 열었지만 JIT를 사용하지만 여기서 볼 수있는 것은 매우 아름답습니다 우리가 테스트 한 한 응용 프로그램을 제외하고 JIT가있는 HHVM이 JIT없이 대다수의 PHP7을 테스트 한 사실을 제외하고는 빨리 WordPress는 거의 동일하지만 일반적인 PHP에서는 모든 흐름과 전체 커뮤니티에 이점이 있습니다 따라서 도구를 변경할 필요가 없습니다 그리고 어쨌든 적어도 PHP2 이후의 PHP는 PHP 자체가 잘 이해하고 있습니다 그리고 호환성 문제가 발생할 가능성이 줄어들면 동기가 정말로 떨어집니다 PHP7이 출시 된 이래로 HHVM 으로의 전환이 급격히 감소했습니다 HHVM으로 옮길 생각을하는 회사에 대해서는 너무 많이 듣지 않습니다 사실 지난 18 개월 동안 아무도 들어 본 적이 없습니다 더 많은 정보를 원하면 여기에 두 개의 URL이 있습니다 PHP의 성능, 진화의 방식, 최신 정보 그리고 여기 엔 또 다른 흥미로운 것이 있습니다 여기 사람들은 만델 브로가 무엇인지 압니까? 그렇지 않니? 네? 일종의 실용 주의자들과 함께 만들 수있는 수학적 모델 인 Mandelbrot은 탁월한 방법이며 속도를 확인하는 탁월한 벤치 마크입니다 언어의 경우, 우리는 Mandelbrot의 구현을 C에서 PHP를 통해 다양한 언어로 실현하거나 활용했습니다 파이썬과 루비를 포함하여 거의 모든 것을 생각할 수 있습니다 그리고

제가 보여주고 싶은 흥미로운 점은 곧 발견 할 것입니다 반응이 결국은 아니기 때문에 중간에 있습니다 우리는 시도 할 것이다

이게 뭐야? 잠깐 좋아, 여기, 결과 결과는 매우 흥미 롭습니다 PHP7을 테스트했을 당시에는 글쎄요, 덜 재미있었습니다

지금은 무언가입니다 이것은 PHP가 어디에 있는지를 의미합니다 여기 PHP7이 있습니다

PHP7은 존경의 장소입니다 C입니다 흥미로운 점은 우리가 구축 할 당시의 JIT 버전이 C보다 빠르다는 것입니다 마찬가지로, 나에게 그것은 우스꽝스럽게 들릴 것이다 나는 인정한다

그래서 말이 되네 이유는 PHP JIT가 런타임에 발생하기 때문에 생성하는 코드를 사용자 정의하는 방법을 알고 있기 때문입니다 코어 i7 또는 코어 i5 또는 기타 다른 유형의 프로세서에서 실행되는 경우 실행되는 특정 CPU로 GCC가 모든 프로세서에서 실행되어야하는 코드를 생성하는 동안 최적의 코드를 생성하는 방법을 알고 있습니다

그 코드는 그 뒤에있는 논리입니다 물론 GCC에서도 가능합니다 특정 버전의 프로세서에서만 작동하고 PHP로부터조차 더 빨리 실행되는 바이너리를 만듭니다 그게 무슨 뜻 이죠? (청중의 코멘트) 그것은 나에게서 오지 않았다 미안해? (청중의 코멘트) 그것은 컴파일 문제가 아니며, 실제로 메모리에 있습니다

그것은 컴파일러를 사용하지 않고 있습니다 메모리에 기계어를 생성하는 간단한 루틴이 있습니다 코어 i7에서 실행 중이므로 코어 i7에 고유 한 코드를 생성합니다

GCC도이 작업을 수행하는 방법을 알고 있지만 컴파일 할 때 와서 "이진을 조정해야합니다"라고 말하면됩니다 "Core i7"그리고 나서 JIT의 보다 빨리 실행됩니다 (청중의 코멘트) 그렇다면 최대 성능을 원하면 프로세서에 맞게 컴파일 할 수 있습니다 그는 너무 빠르지 만, 누가 신경 써? 글쎄, 공연은 결코 충분하지 않다 글쎄, PHP7에서 가지고있는 다른 것들에 대해 조금 과거에는 알아 채지 못했던 많은 경고 또는 당신이 그것을 붙잡을지라도 잡기가 어렵다는 경고 이제 PHP7에서 예외가 있습니다 그것은 아주 적어도 당신 중 일부는 경고를 받고 그것에 대해 무언가를하기 위해 경고 관리자를 작성해야한다고 생각합니다 그것을 올바르게하는 것은 어렵습니다 컨텍스트가 없습니다 만약 당신이 다른 사람들이 너무 열심히 사용할지도 모르는 구성 요소를 만들고 있다면 다른 사람의 코드와 잘 작동하는 코드 작성 PHP7에서이 모든 이야기와 함께 잡을 수있는 것들이 더 많으며 그것들을 잡는 방법도 있습니다 가장 간단한 방법은 단순히 확장을 사용하는 것입니다 이것은 PHP7에서 얻은 또 다른 것입니다 또 다른 것은 PHP7에서 두 가지 더 새로운 것들입니다 타입 힌트가 있기 전에 리턴 타입 선언이 있습니다 이 함수의 경우, PHP7에서 어떤 함수가 리턴해야하는지 정의 할 수 있고 서명과 일치하지 않는 것을 반환하면 그래서 그것은 작동하지 않을 것이다

그리고 거기에 또 다른 특징이 있습니다 저를 위해서 추가하는 실수였습니다 추가하는 것이 었습니다 그러나 그는 진짜 토론을 가졌습니다 Scorched 지진 그리고 결국에는 그것을 추가하기로 결정했습니다 실제로 스칼라 타이핑 (Scalar Typings)입니다

특정 종류의 객체를 기대할뿐만 아니라 정수 또는 문자열을 예상한다고 가정 해 보겠습니다 또는 부동 소수점 등 나는 이것을 개인적으로 사용하는 것을 권장하지 않는다 나는 그 후 아마도 라마에게 가지 않을 것이다 나는이 토론에서 이미 1, 2 년의 삶을 잃어버린 것 같아요 그래서

포기하다 비용 손실 주장 안함 그것은 실제로 아주 좋은 무언가입니다, 전에 PHP에서 단언했지만 그것은 실제로는 전혀 없었습니다 그리고

코드 내에 어설 션을 추가하면 실제로 느려질 것입니다 제작 중에도 사실은 없습니다 이 주장을 실행시키지 않기 위해서 그들은

그가 가지지 않을 것입니다 그는 집행관을 그만 두지 않았을 것입니다 단언은 실패했지만 그는 여전히 표현을 실행하고있었습니다 PHP7에서는 이제 언어 수준에서 지원되며 기본적으로 PHPINI 구성

0 일 경우 PHP는 완전히 무시합니다 이 진술에서 그리고 1에 있다면 assertion을 검사하고 개발자를 테스트하는 동안 사실을 확인하게합니다 가정하는 모든 가정이 사실입니다

그리고 언급했듯이 Cynthics는 개선되었으며 사용자 설명서에서 볼 수 있습니다 몇 가지 더 좋은 기능이 있습니다 더 많이 좋아하는 것, 덜 좋아하는 것, 우주선 운영자는 당연히 모두를 상기시킵니다 TIE 폭파 범 그것이하는 일에 대해서는별로 쓸모가 없습니다 기본적으로 두 개의 매개 변수를 비교하면 실제로 세 개의 결과 또는 -1이 반환됩니다 또는 0 또는 1 그리고 두 매개 변수 사이의 비율을 알 수 있습니다 크거나 작거나 같거나 오늘 당신이 연산자 전에해야 할 일이있어서 당신이해야 할 일은 두 구에서 이것은 한 유형이나 다른 유형의 비교 함수를 작성하는 경우에 특히 유용하지만 거의 내가 생각할 수있는 다른 것은 없습니다

균일 변수 구문 그리고 추상 구문 트리 그것은 당신에게 너무 직접적으로 영향을 미치지 않는 두 가지 것입니다 Union과 Reable Sintex는 만약 신이 금지한다면, 당신은 코드에서 그런 것을 가지고 있습니다 그렇게한다면, 부끄러워 질 것입니다 코드에서, 그런데, 내가 왜 이것을 말하고 있는지 이해할 수없는 사람들에게는 여기에 달러가 있습니다 ($), 여기에 약간의 잘못된 참조가 있음을 의미합니다

그것은 당신이 가질 성공한 것이 아닙니다 이와 같은 것이 필요하다면 합법적이지만 괄호를 추가하고, 행동의 순서를 신뢰하지 마십시오 PHP의 경우, 이러한 표현식의 특정 작업 순서가 PHP5와 7 사이에서 변경되었습니다 PHP5에서 연산 순서는 같았습니다 즉, 먼저 연산을 계산 한 다음 결과를 사용하여 fu에 대한 참조를 작성했습니다

그리고 PHP7은 먼저 이것을 계산 한 다음, 괄호없이 코드를 작성한 것처럼 RA로 봅니다 하지만 대부분의 경우 자동으로 검색 할 도구가 없습니다 Abstract 새로운 Syntax Terry는 직접적으로 나타나지 않는 것입니다 최종 사용자에게는 영향을 미치지 않지만 도구를 만들 수는 있습니다 PHP를 처음 접하게되면서 이제는 분석 도구가 개발되기 시작했습니다 더 많은 것이 있습니다

지금은 흥미로운 것들이 너무 많지는 않지만 앞으로있을 것이라고 생각합니다 필터링 된 비 직렬화 Sirajiz에게 당신이 기억에 들기를 원하지 않는 어떤 것들을 무시하지 말라고 실제로 말하는 옵션 그리고 실제로는 꽤 유용한 다른 것, Null Coalesce 연산자

나는 그들이 사용한 것을 결코 이해하지 못했습니다 물음표 (??) 그러나 누구가 그것을 강요하는 것을 결정 했는가 ??, 3 자 통신 수와 동등하다 즉, X가 2인지 여부를 확인하고, 값이 X이면 X를, 그렇지 않으면 값을 Y로 지정합니다 여러 번 당신이 실제로 말하기를 원한다면 "X가 존재한다면 나는 그것을 원한다 그리고 기본값이 아니면" 그래서이 구조를 사용할 수 있습니다 (청중의 코멘트) O의 오퍼레이터는 정확히 그것을하지 않습니다

(청중의 코멘트) 나를 이렇게 생각하지 마라 생각해 보자 네가 맞을지도 모르지만 나는 그것을 제안한 사람이 매우 똑똑한 여자 야 그래서 나는 그것을 의심합니다, 나는 그녀가 그것을 발명 한 이유에 대한 좋은 설명이있을 것이라고 확신합니다

그러나 곧, 쉬지 않고 우리는 그것을 볼 것입니다 원하는 사람들을위한 전체 목록, PHP7에 새로 추가 된 모든 것 (화면상의 링크를 읽음) 보기에 오신 것을 환영합니다 PHP71이 출시되기 1 주일 남았습니다 PHP를 사용하지 않는 사람들을 위해

PHP는 최근 몇 년간 양식이 변경되어 출판 과정을 거쳤으며 가능한 한 많이 기대됩니다 예상되는 매월 세 번째 숫자가 고급, 즉 70

1, 702 등의 유지 관리 버전이 있습니다 우리는 이제 70

11 또는 그와 비슷한 것으로 생각합니다 그리고 우리는 매년 두 번째 숫자의 변경, 두 번째 책의 변경이 의미하는 바의 버전을 만들기 위해 매년 노력합니다 그것은 기능의 추가 이것은 호환성을 깨뜨리지 않아야하고, 아주 특정 영역이 있습니다 우리는 실제로 호환성을 깨뜨릴 용의가 있습니다 우리가 그들을 위해하고 싶은 기능은 비추천입니다 따라서 비추천주의 사항을 추가하십시오

이것이 우리가하는 일입니다 하지만 우리는이 기능을 사용하지 않습니다 제 말은, 정말로 쉬는 유일한 길 당신은 물론 비추천 통지를 취소 할 수 있습니다 그렇다면 당신은 영향을받지 않을 것입니다, 네? (청중의 코멘트) MySQLi는 변경되지 않았습니다 MySQL은 7시에 7시에

오케이, 그래서 다시 한 번, 세 가지가 있습니다 PHP 버전에는 세 자리 숫자가 있습니다 세 번째 숫자는 가장 오른쪽 숫자입니다

원칙적으로 버그 수정, 숫자 (청중의 코멘트) 오, 우리는 두 번째 책을 다운로드하지 않습니다 두 번째 책에서,

PHP7과 같은 훌륭한 버전에서는 PHP5에서 여전히 남아있는 모든 것을 다운로드하고 깨뜨린 것들이 있습니다 그들은 그들을 완전히 없애고 더 이상 존재하지 않습니다 우리는 MySQL을 다운로드했습니다 그러나 71에서 그들은 그런 것들이라고 말하지 않습니다

만약에 만약에 당신이 무언가가 부서진 것을 본다면 물론 돈을 돌려 받으러 오면 (청중의 코멘트) 입양 수준? 예, 데이터가 있습니다

기본적으로 보여 드릴 수 있습니다이 수치는 매우 문제가되는데, 곧 알게 될 것입니다 알 겠어? 이 슬라이드를 끝내려면 잠시만 기다려주세요 그러면이 슬라이드에서 입양 수준에 도달 할 것입니다 좋은 것들, a) 더 많은 성능 향상이 있었고, 멀지 않았으며, 5와 7 사이의 성능 향상에 근접하지 않았습니다

그러나 WordPress에서는 상황에 따라 5-8 %의 성능 향상을 볼 수 있습니다 합성 벤치 마크에서 그런데, 합성 벤치 마크가 항상 부적절한 것은 아니며, PHP를 사용하는 사람들도 있습니다

웹 응용 프로그램 그렇다면 그들은 30-40 %의 크기와 50 %의 성능 향상을 확실히 볼 수 있습니다 멀티 캐치, 기본적으로 잡을 수있는 기능

한 가지 상황에서 몇 가지 종류의 종료를 가져옵니다 시간을 공간으로 다시 설정할 수 있습니다 특히 함수가 아무 것도 반환하지 않는 방법을 PHP에 구체적으로 말하면됩니다

자신이하는 일을 되 찾으려하면 다시 시도하십시오 그리고 마지막으로 정말 좋은 점은 list () 구문을 짧게하는 것입니다 PHP에서 기억한다면 대괄호로 목록을 만들 수 있습니다 짧은 방법으로 지역을 분할 할 수 있으므로 PHP71에는 그렇게 할 수있는 옵션이 있습니다

이것은 또한 foreach에서 사용될 수 있습니다 고맙습니다 그리고 여기, 나는 피하지 않는다 고마워 (박수) 그래서 우리는 데이터를 가지고 있습니다

현재 PHP7이 발견되었다고 생각하는 최신 데이터에 따르면 말하기 지역에서 당신은 무엇을 압니까? 아, 내 노트북이 아니기 때문에 이메일을 열 수 없다 우리는 넷 크래프트에서 얻은 데이터를 가지고 있으며, 마지막 데이터에서 PHP7이 3-4 % 영역에 있다고 생각합니다 이것은 약간 끔찍한 것 같습니다 하지만 당신은 우리의 데이터를 보았습니다

또한 PHP4가 아주 많이 있습니다 PHP50과 51과 52가 많이 있습니다

많은 사이트가 있습니다 그들은 Extreme에게 "그것을 깨뜨리지 않으면 고칠 수 없다"는 태도를 취했습니다 그냥 만지지 마십시오

내 말은, 어떤 버전이 나오더라도 업그레이드하지 않을 것입니다 물론 문제가 될 수 있습니다 적어도 이러한 사이트 중 일부는 탈출 할 수 있습니다 그리고 먼 곳에서 그들을 통제하십시오 그러나 그것은 그 문제의 일부입니다

대부분 나는 개인적인 관계에있다 PHP를 사용하는 기업들과 함께 가장 중요한 부문과 함께 시장의 매우 특정한 부분 우리가 보았을 때, 나는 또한 여기에 두 개의 예제를 보여 주었고 다른 많은 예제들이 있습니다 PHP7 로의 전환에 대한 관심의 정도는 대단히 고가, 나는 이전 버전보다 더 높을 수도 있다고 생각합니다

예를 들어, 4에서 5까지는 매우 어려웠습니다 우리는 어느 시점에서 우리는 PHP4를 지원하지 않기로 결정했습니다

PHP4를 사람들이 5로 이동하도록 동기를 부여하기 위해서입니다 그들은 싶지 않았어

그들은 통과하기를 원하지 않았다 그리고 그것은 물론 문제였습니다 왜냐하면 동시에 4와 5를 지원한다는 측면에서 힘의 분리 때문이었습니다 그래서 2008 년에 우리는 그것을 마지막으로 죽였습니다 아직도 말했듯이, 그것을 사용하는 사람들이 여전히 있습니다 7에 관심의 수준은 더 격렬하고 더 높습니다 왜냐하면

여기 당근은 아주 강하기 때문에 당근이 필요 없다는 것을 의미합니다 매우 강력하고 성능이 향상되었습니다 중요한 점은 슬라이드에서 언급 한 다른 모든 기능, 몇 가지 슬라이드 이 최근의 멋진, 향상된 성능 꽤 친숙한 자체 그리고 PHP에서 중요한 응용 프로그램을 가지고 있거나 7로 이동했거나 7로 이동하는 과정에있는 대부분의 대기업 (청중의 코멘트) "Gudady"나는 그들에 대해 모른다, "ETSI"예를 들면 PHP7로 옮겼다

가장 큰 것 중 하나입니다 가장 큰 것 페이스 북은 HHVM을 가지고 있기 때문에 분명히 무의미하다 그러나 대기업, 다시 한번, 우리는 PHP7, 1 년 미만, 생일 축하에 불과하지만

그들 모두는, 정말로, 또는 그들이 겪은 무대에서 대다수는 통과하지 못했고, 대다수는 무대에서 과도기의 과정에서 다른 질문이 있으십니까? 또 다른 두 번째, 네? (청중으로부터의 질문) 예 (청중으로부터의 질문) 어떤 방법으로? (청중으로부터의 질문) 아 맞다 (청중으로부터의 질문) 예 (청중으로부터의 질문) 예 그래서 질문은 Z-Ray, Z-Ray에 관한 것입니다

Zend 플러그인은 오픈 소스가 아니며 비공개입니다 그리고 실제로 개발자는 훨씬 더 생산적 일 수 있습니다 내부에 맞는 도구 모음입니다 브라우저는 그저 그런 것이 아니라 모바일 및 모든 종류의 상황에서 아름답게 작동하는 것으로 알려져 있습니다 다른 모드 그리고 PHP에 대한 일반적인 정보와 WordPress, Drupal 및 PHP가 보유한 대부분의 주요 응용 프로그램에 대한 많은 정보를 제공합니다 이 도구는 상업용 젠드 서버 중 하나이며 이전에 릴리스 한 젠드 서버입니다 1 년이 넘는 동안 여러분이 사용하는 플러그인의 미리보기가있었습니다 그냥 무료 PHP를 설치할 수 있습니까? 우리는 여전히 그것으로 무엇을 할 것인지를 결정하는 과정에 있으며,이 시점에서 7을 지원할 것이라는 기대는 없습니다

그러나 그것은 일어날 것이라고 추측합니다 그러나 나는 할 수 없습니다 그런 일이 발생하면 7

1도 지원합니다 (청중으로부터의 질문) 이봐 요 우린 그걸로 많은 경험을했습니다

미안해? (청중의 코멘트) 56에서 7까지, 그렇습니다 56에서 56으로 바뀌 었습니다

56에서 7로 바뀌 었습니다 그것은 비난받은 ​​것들이 다운로드되었습니다 내 말은, 비추천 통지를보고 "멋지다, 나는 단지 고지를 비난 할 것이고 모든 것이 잘된다" 이제 이제 토요일 밤이고 그는

(청중의 코멘트) 사용되지 않는 기능에서 깨끗하고 기능이없는 경우 어땠어? 그리고 네가 가진 것이 그 공포 (청중의 코멘트) 모든 것은 그 다음 웅크 리고있다 그래서 모든 것은 멋지다 이건 물론, 확인해 봐, 네? 그것은 업데이트의 바다를 만들고 목요일 저녁에 집에 가지 마십시오 하지만

(청중의 코멘트) 네? (청중으로부터의 질문) 뭐 5

6에서 실행되는 코드로 53 선취권에 대해 계속 일치합니까? (청중의 코멘트) 내 의견으로는, 아니, 나는 생각하지 않는다, 나는 또한 우리가 사람들을 격려하려고 노력해야한다는 것을 인정해야하며, 나는 그 문제를 알고있다 그러나 보안상의 제약 때문에 우리는 사람들이 구 버전을 계속 실행하도록 권장하지 않습니다 예를 들어, 56은 끝날 때까지 지원하기로 결정했습니다

2018 년 말까지 상대적으로 긴 시간이 걸렸습니다 다시 7로 전환하는 것이 어렵다는 것을 알고 있기 때문에 기술적으로는별로 크지 않지만 여전히 있습니다 (청중으로부터의 질문) 오 한 번도 바퀴가 없었습니다

(청중의 코멘트) 예 (청중의 코멘트) 아냐, 아냐 변명의 여지가 없어, 진실이라고 생각해 기억하려고하면, 우리가 도구를 사용했다고 생각해

우리가 사용한 도구에서 parcing을 위해서 우리는 그 문제를 해결하는 데 문제가 있었고이 문제는 수년 후에 해결되었습니다 그게 주된 이유라고 생각해 네? (청중으로부터의 질문) 오, 어 예, 진실은 우리가이 프로젝트로 돌아 왔고, 여전히 문제가 있다는 것입니다 그건 그렇고, 실제로 돌아 오지 않을 것입니다, 실제로 다시합니다 여전히 WordPress와 같은 실제 앱에서 성능을 변경하는 데 문제가 있음을 나타냅니다 코드의

성능에 대한 광범위한 변경 어느 쪽이 순수한 처리인지, 즉 그는 데이터베이스와는 이야기하지 않는다는 것을 의미합니다 PHP의 JIT가 기존 애플리케이션의 성능을 향상시키는 대신 오픈 할 것입니다 이전에는 실용적이지 않았던 새로운 유형의 응용 프로그램에 PHP의 문호를 열어 주겠지 만 계속해서 포기하지 않았습니다 네? (청중으로부터의 질문) 오, 이거 묻는 사람은 누구나 한 줄에있다 두 번째 순간, 우리는 각도를 바꿀 것입니다 (청중으로부터의 질문) 나는 듣거나 이해할 수 없었다 (청중으로부터의 질문) 예 (청중으로부터의 질문) 어쩌면 나중에 상황을 이해할 수는 없지만

네? 내가 돌아 가기 전에 (청중의 코멘트) (박수) 그건 그렇고 듣지 못했던 사람들에게, 그것은 더블 포인트 (:)의 경고와 관련하여 진실은 "경고"가 아니라는 것입니다 아래 소포에는 :: T라고 불리는 Tucan이 있습니다

그들은 이미 저와 접촉을 많이했으며, non-point colon이되어야한다고 말했습니다 괜찮아 그리고 왜냐하면 이 상황에서 경고 메시지가 나타나 토큰 이름을 사용하므로 경고 메시지를 받게됩니다 (청중의 코멘트) 또 다른 질문은? (청중의 코멘트) 몇 년 후에 다시 연락 드리겠습니다 완벽한 대답을 드리겠습니다 (청중의 코멘트) 예 (청중으로부터의 질문) 예, 예 (청중으로부터의 질문) 아니요 질문은 역사 디버거에 관한 것이 었습니다 나는이 순간에 그것이 의미하는 바를 설명하려고하지 않을 것입니다

당신은 검색을 환영하지만 아무에게도 알지 못합니다 누가 그걸로 일하는지 (청중의 코멘트) 예, 기본적으로

아마도 그럴 것이지만 매우 느립니다 우리는 젠드 서버에 뭔가를 가지고 있습니다 상업용 제품에는 정확하게 그렇지 않은 것이 있습니다 이력 디버거를 사용하지만, 어떤면에서는 비슷합니다 제 생각에는 이것이 실제 서버에서 수행하는 유일한 실제 방법입니다 그리고 그것은 많은 사람들에게 도움이되고 매우 빠를 필요가 있습니다 저기 우리는 블랙 박스에 대한 일종의 코드 추적이라는 능력을 가지고 PHP는 그것은 실제로 알고 있습니다 그것은 실제로 버그를 비활성화하지 않지만 모든 실행 속도, 모든 함수와 백과 파일의 값 등을 유지합니다 특정 요청에 포함 된 그런 감시가 만들어지면 정의 할 수있는 몇 가지 규칙이 있습니다 그래서 물론 천천히 내려 가지 않을 것입니다 귀하의 사이트를 무릎에 내려 놓으십시오

그래서 내가 아는 가장 가까운 것 이력 디버거 (청중의 코멘트) 몰라? 나는 역사 디버거가 혁명을 일으켰다 고 생각하지 않는다

다른 언어에서는, 나는 그들이 그렇다고 생각한다 그렇다 (청중의 코멘트) 오른쪽 예, 저는 여전히 대다수의 사람들이 사용하지 않는다고 생각합니다 그것은 그것이 정당화 된 것은 아니지만 대다수는 그들의 존재를 인식하지 못한다고 생각합니다 (청중의 코멘트) 음, 정말 고마워 (박수)

Auriculoterapia – O que é Auriculoterapia na Acupuntura

Auriculotherapy 무엇입니까? 이름부터 시작하겠습니다 auriculo는 귀를 의미합니다

치료 란 치료를 의미합니다 즉, auriculoterapia 치료는 귀를 통해 이루어지며, 이는 또한 사용됩니다 귀의 관찰을 통해 질병의 진단 및 예방에 도움을줍니다 우리의 귀는 우리 몸의 마이크로 시스템입니다 즉, 수백 포인트가 있습니다 이 점들은 신체의 기관, 내장, 조직 및 구조에 해당합니다

우리가 이러한 귀 부분을 자극하면 뇌는 자극을 받아 방출 반응을 보입니다 웰빙, 통증 완화 및 균형을 완화시키는 물질 전신, 불안감 감소, 체중 감소, 불면증 및 기타 많은 도움 Auriculotherapy 치료는 어떻습니까? 평가 및 진단 후, 종자, 결정, 치료 될 점의 미세 바늘, 이들 종자 또는 수정 뇌에 정보를 가져다 준 점을 자극하여 물질을 방출하여 균형을 이룬다 유기체 이 씨앗은 환자 자신이 제거 할 3 일에서 5 일 사이에 있어야합니다 또는 전문가에 의한 다음 세션

구강 치료는 다양한 신체 질환의 진단 및 예방에 널리 사용됩니다 그리고 영매

PHP – Tutorials Part 5 (Strings)

오늘 비디오에서 Assalam-o-Alikum은 PHP에서 String이 무엇인지, 왜 우리가 그것을 사용하는지에 대해 배울 것입니다 문자열은 "Hello world!"와 같은 문자 시퀀스입니다

그러나 액세스되는 값은 문자열이 정의 된 범위의 변수 이름으로 해석됩니다 그리고 가장 일반적으로 사용하는 PHP 함수 (문자열) 문자열 길이 가져 오기 PhP 문자열의 길이를 결정하는 방법 PHP String () 함수 문자열의 길이를 반환합니다 아래 예제는 "Saad Ahmad"문자열의 길이를 반환했습니다 We Used Echo 문자열 길이 당신은 Strlen의 이름으로 사용하고 우리는 그것에 텍스트 ( "Saad Ahmad")를주었습니다 문자열 길이 함수는 우리에게 10의 출력을줍니다 보시다시피 네 글자가 네 글자를 포함하고 성은 다섯 글자를 포함합니다 따라서 총 9 개의 글자가 있지만 문자열 길이 함수는 글자 사이의 공백을 단어로 계산하므로 합계가 10입니다

텍스트를 보면 Saad와 Ahmad 사이에 공백이 있다는 것을 알 수 있습니다 공백은 문자열의 문자로 계산됩니다 Length 함수 Count 문자열의 단어 수 PHP 문자열 단어 수 () 함수 문자열의 단어 수를 센다 위의 언급 된 문자열 함수의 예를 볼 수 있습니다 우리가 사용하는 예제 텍스트는 Hello World이고 "Hello"는 One Word이고 "World"는 다른 단어이기 때문에 우리가받은 출력은 2입니다

문자열 반전 PHP 문자열 역방향 () 함수는 문자열을 역방향 한 예가 화면에 표시됩니다 이전 예에서는 Hello World 텍스트를 사용하지만 문자열 반전 함수를 사용하면 출력이 미러링되고 Hello World라는 텍스트가 모두 뒤로 쓰여 있음을 볼 수 있습니다 문자열 내의 특정 텍스트 검색 PHP 문자열 위치 () 함수 문자열과 함께 특정 텍스트를 검색합니다 일치 항목이 발견되면 함수는 첫 번째 일치 항목의 문자 위치를 반환합니다 일치하는 항목이 없으면 반환합니다 이 예제에서는 문자열 "Hello World"에서 "World"라는 텍스트를 검색합니다

우리는 Hello World 텍스트에서 세계를 찾기 위해 문자열 위치 함수를 에코 처리합니다 팁 여기에 문자열의 첫 번째 문자 위치는 0 (1이 아님)입니다 문자열의 위치는 0으로 시작하지 않으므로 마음에두고 텍스트 "Hello World"의 단어 수를 세고 "Hello"와 "World"사이의 공백을 계산합니다 따라서 수신 된 출력은 6입니다 그래서 그 기능이 우리의 텍스트 "Hello World"에서 세계를 발견하자마자 6의 출력을주었습니다 문자열 내에서 텍스트 바꾸기 PHP 문자열 바꾸기 () 함수 일부 문자를 문자열의 다른 문자로 바꾸기 아래의 예는 "World"라는 텍스트를 "Friends" 따라서 에코 문자열 교체 기능 우리는 쉼표를 넣고 다시 쉼표를 쓰고 쉼표를 다시 써서 쉼표를 넣은 뒤 반전 된 쉼표에 Hello World를 써서 "세계"라는 단어를 친구와 바꾸십시오 그리고 그것은 우리의 튜토리얼이었습니다

PHP에서 문자열을 사용하는 방법과 PHP에서 문자열의 유형이 다음 튜토리얼에서 여러분을 볼 수 있기를 바랍니다 Asalam-o-Alikum

#1 CakePHP 3.6 Beginner Video Tutorial – Installing CakePHP 3.6

cakephp 웹 사이트를 열고 다운로드 버튼을 클릭하십시오 요구 사항을 확인하다

컴퓨터에서 PHP 버전 확인 PHP 560 이상 (PHP 72 포함) 이제 php 확장자`mbstring`과`intl`을 확인하십시오 이 경로`xampp / php / php

ini`로 가서 phpini 파일을 편집기에서 엽니 다 phpini 파일에서`mbstring` PHP 확장 검색 이 라인을 확인하십시오 `intl` php 확장 라인을 확인하십시오

또한 XAMPP 제어판을 사용하여 웹 서버 (Apache)를 다시 시작하십시오 htdocs 폴더로 이동하여 명령 프롬프트를 엽니 다 CakePHP 설치하기 이 명령을 복사하여 명령 프롬프트에 붙여 넣으십시오 원하는 경우 프로젝트의 이름을 바꿉니다 엔터를 치다

처음으로 cakephp 프로젝트를 설치하는 경우, 5-10 분이 소요될 수 있습니다 cakephp 프로젝트를 두 번째로 설치하면 컴퓨터가 메모리에서 파일을 캐시합니다 설정 폴더에 appphp 파일을 열고 보안 키를 변경하십시오 xampp apache`httpdconf` 파일`xampp apache conf httpd

conf`를 엽니 다 새 가상 호스트 만들기 설정에서`server name`과`project folder path`를 전달하십시오 창 호스트 파일의 서버 이름을 전달하십시오 나는`HostsFileEditor` 소프트웨어를 사용하고 있습니다 이 모든 것을 한 후에, 아파치 서버를 다시 시작하십시오

모든 것이 옳다 단지 데이터베이스의 오류가오고있다 그래서 이제 데이터베이스를 만든다 편집기에서 cakephp 프로젝트 폴더 열기 appphp 설정 파일을 열고 데이터베이스 이름을 전달하십시오

데이터베이스가 성공적으로 설치되었습니다

#13 CodeIgniter 3.x Advanced Tutorial – Insert user data in the database by user registration

– :: 사용자 등록으로 데이터베이스에 사용자 데이터 삽입 :: – 사용자 등록 데이터 인쇄 사용자 등록 데이터를 저장할 배열 만들기 사용자 등록 배열`$ user_data '인쇄 codeIgniter 모델 문서로 이동하십시오 새 모델 'User_Model

php'만들기 codeigniter를 복사하여 사용자 모델에 붙여 넣기 사용자 등록 데이터 삽입을위한 함수 만들기 사용자 등록 배열`$ user_data '인쇄 컨트롤러에 사용자 모델로드 이제 사용자 모델의 삽입 기능을 호출하십시오 성공적인 사용자 데이터 인쇄 이제 모델에 변수로 데이터베이스 테이블의 이름을 저장하십시오 이제 insert 메소드의 데이터를 반환하십시오 데이터를 인쇄합니다 부울로 데이터를 반환 데이터베이스 테이블의 데이터 검사 (사용자) 모델 해부학 사용자 모델 이름 변경 사용자 등록 양식을 다시 제출하십시오

고유 한 규칙 인 유효성 검사 오류 표시 컨트롤러에 모델을로드하는 방법 그리고 이런 식으로 우리는 컨트롤러에서 모델의 방법을 사용할 수 있습니다 codeigniter 데이터베이스 참조로 이동 이 행은 데이터베이스에 들어가는 데이터의 ID를 리턴합니다 이 줄은 데이터베이스 쿼리를 출력합니다 마지막 쿼리를 보여주기 위해 데이터베이스`last_query ()`를 사용하라 고유 한 데이터 유효성 검사 오류를 표시하므로 사용자 테이블이 비어 있습니다

양식을 제출 한 후 마지막 검색어를 인쇄합니다 return id (table data id)에`insert_id ()`메소드를 사용한다 저장 데이터의 열 id가 데이터베이스 테이블에 표시됩니다 새 열 사용자 암호 추가

PHP Script बनाना और उसको Run करना सीखे हिन्दी भाषा में – वैभव जैन

C : xampp htdocs를여십시오 htdocs에있는 기본 xampp 파일을 삭제하거나 이동하십시오

php 확장자로 파일 만들기 여기에 php / html 또는 기타 메시지를 작성하십시오 xampp을 시작하여 아파치를 시작하십시오 (웹 서버) 이제 브라우저에서 PHP 스크립트를 실행하십시오 URL에 localhost 또는 127

001을 작성하십시오 귀하의 PHP 스크립트를 클릭하십시오

Membuat Aplikasi Kasir Sederhana – Part 5 Membuat Module Koneksi ke DB MYSQL

Assalamu'alaikum warrahmatullahii wabarakatuh 안녕 친구, 나랑 다시 돌아와

피자 라마 Waluyo, CV 이력서 시스템 이번에는 튜토리얼을 만들 것입니다 제작 모듈 MYSQL DB에 연결 음, 첫 번째 단계를 시작하십시오 내가 너에게 조언 해NET 커넥터 MYSQL의 공식 웹 사이트에서 다운로드하십시오 또는 다운로드 canian 디

이 비디오 박스에 대한 설명 이 비디오 박스에 대한 설명 이 비디오 박스에 대한 설명 이 비디오 박스에 대한 설명 다운로드하십시오 먼저 비디오 파트 잘 시작했습니다

프로젝트 메뉴를 클릭하고 참조를 추가하십시오NET 탭을 선택하십시오 mysqlData를 검색하고 확인을 클릭하십시오

우리는 VBnya를 엽니 다 우리는 어제 프로젝트를 엽니 다 인벤토리 앱 우리는 프로젝트 페이지에 입력했습니다 다음 프로젝트 / 프로젝트 메뉴 탭을 클릭합니다 참조를 추가하십시오 우리는 NET 탭을 선택합니다

여기 우리가 찾고 있습니다 mysqlData 이것은 mysql

Data이다 그런 다음 확인을 클릭합니다 그런 다음 pdfnya로 돌아갑니다 우리는 하나의 모듈을 만들 것입니다 데이터베이스 연결 그 길은

프로젝트 메뉴를 선택한 다음 창 양식을 추가하십시오 여기 우리는 모듈을 선택하십시오 우리는 그 이름을 으로 바꿨다 모드 연결 vb 추가 클릭 좋아 우리는 PDF로 돌아갑니다 솔루션 탐색기를보고 증가 할 것입니다

1 개의 파일이 modConnectionvb입니다 이거 요 * 책 읽기 * 책 읽기 우리는 단지 코드를 복사합니다 우리가 복사 이것은 맨 위에있다

이 코드에서 먼저 코드를 복사합니다 이것은 우리가 입력합니다 우리가 입력하는 코드 안에 이 코드

이런거 우리가 구해 * 책 읽기 * 책 읽기 그런 다음 우리는 데이터 fotm 상품에 대한 데이터를 표시하려고합니다 * 책 읽기 * 책 읽기 * 책 읽기 * 책 읽기 * 책 읽기 frmDataBarangvb에서 2 배를 클릭합니다

이런거 형태의 본문에 형태의 본문에 구성 요소 패드를 클릭해서는 안됩니다

다른 도구 상자 양식 본문에만 있어야합니다 양식 본문을 두 번 클릭합니다 그러면 디스플레이가 이렇게됩니다 우리는 다시 시작한다 다음 코드를 입력하십시오

우리는 코드를 복사합니다 우리는 그것을 복사했습니다 다시 열렸어 그리드의 하위 컨텐츠 인 새 하위를 작성하십시오 그리드의 서브 컨텐츠 알았어

subIsigrid를 복사하십시오 우리가 입력 ~까지 아래에, 개인 서브 밑에 끝 부분 아래 붙여 넣기

pdfn 모듈로 돌아갑니다 더 그리드 내용 가져 오기 이벤트 frmDataBarang_Load 코드를 복사하십시오

사본 음, 완전한 코드가 있습니다 이런 식으로 즉, 서브이 그리드 우리는 전화 할 것이다 sub는 sub frm입니다 DataBarang_Load 알았어

우린 여기 파스칸이야 이 DB 열기 그리드의 하위 컨텐츠에 복사합니다 우리는 되돌아 본다 modConnection 우리가 대체 할 DB를 엽니 다 OpenDB ()를 호출하십시오

저장하다 그것을 실행하고, 물건 폼을 보여라 성공하면 그리드 데이터가 채워질 것입니다 자동으로 우리 모두를 구한다 우리가 달린다 마스터 데이터를 클릭하십시오

상품 데이터 오야 우린 여기서 나가야 해 웹 서버 즉 XAMPP 우리는 아파치와 MySQL을 스타로 만든다 우리가 먼저 멈춘다 우리는 다시 마스터 데이터를 클릭하고 데이터 항목을 클릭하십시오 알 수없는 데이터베이스 dbinvetory dbinvetory 우리는 "y"를 "i" 우리는 구한다

그런 다음 다시 실행하십시오 우리가 먼저 멈춘다 그 다음에 달린다 마스터 데이터를 클릭하십시오 상품 데이터를 클릭하십시오

음, 그러면 양식이 채워질 것입니다 이렇게 우리는 깨끗한 새로운 sub sub를 생성합니다 우리는 단지 복사한다 위의 서브의 유용성은 다음과 같다 청소를위한 서브 루틴 텍스트 상자에 텍스트

* 책 읽기 * 책 읽기 우선 우리가 먼저 추가합니다 상품 데이터 우리는 추가 오야, 여기있어 입력, 우리는 깨끗한 하위를 추가합니다 아마 내게 너무 많은 튜토리얼 더 사과 좋아해요 잊지 마세요

SHARE 및 SUBSCRIBE 채널 CV 사례 Wassalamu'alaikum warrahmatullahii wabarakatuh

How to Reset Your WordPress Password Manually – Cpanel & phpMyAdmin

얘들 아 오스카 곤잘레스 에 대한 암호를 재설정하는 방법을 보여 드리고자합니다

귀하의 WordPress 웹 사이트, 만약 당신이 그것을 잃어버린하고 당신은 이메일을 통해 그것을 복구 할 수 없습니다 아마도 당신은 누군가의 웹 사이트에서 일하고 있거나 어떻게 기억할 수 없는지 자신의 사이트에 들어가기 호스팅 계정에 액세스 할 수 있어야합니다 그 점에 대해서 꼭 알아 보도록하겠습니다 내가 지금 일하고있는 사람이고 이것이 cPanel 웹 사이트입니다

cPanel 귀하의 웹 사이트가 귀하의 계정과 다르게 보일 수있는 계정 관리 다른 또는 심지어 cPanel이 없을 수도 있지만 어딘가에 호스팅에 있습니다 서비스를 사용하려면 MySQL 데이터베이스 관리 도구에 액세스해야합니다 우리가 네 개의 도구를 가지고있는 경우 PHP myadmin 그리고 우리가 PHP myadmin으로 작업하기를 원하는 몇 가지 다른 것들 당신의 호스트가 당신에게 다른 타입을 제공한다면 이것은 cPanel에 있습니다 패널은 사용자 또는 사람과 비슷합니다 그러면 해당 시스템에서 어떻게 할 수 있는지 찾아야합니다

귀하의 데이터베이스에 우리가 그것을 클릭하고 열어 드릴 변경 사항을 이 데이터베이스는 일반적으로 최소한 두 가지를 갖게되는 것처럼 보입니다 여기 왼쪽에있는 두 개의 다른 목록이 그 중 하나 일 것입니다 귀하의 웹 사이트 중 하나는 만지고 싶지 않은 데이터베이스 자체를위한 것입니다 정보 스키마라고하는 것은 혼자만 남겨두고 다른 것은 확장합니다 하나는 더하기 아이콘을 클릭 한 다음 아래쪽으로 스크롤 할 것입니다

그리고 플러그인 테이블 수에 따라 테이블이 다르게 보일 수 있습니다 가지고있는 것들과 당신이 당신의 워드 프레스 웹 사이트에서 사용자 정의한 것들 WP 사용자가 확장하는 것을 보여주는 바로이 테이블이 당신이 찾고있는 것입니다 당신이 그것을 실제로 클릭하기 만하면 그것을 클릭하면됩니다 당신은이 특정 사용자가 사용할 수있는 모든 옵션을 볼 수 있습니다 이 웹 사이트의 특정 사용자 및 읽고 싶은 내용은 지금 재설정하십시오 당신이 바로 여기에 사용자 로그인 사용자 패스에서 볼 수있는 관리자 암호입니다 사용자 좋은 이름 사용자 좋은 당신이 넣은 친근한 이름 같은 이미지 WordPress를 사용할 때의 대시 보드 관리자 또는 사용자 법률 여기에 사용자 이름과 암호 암호가 있음을 주목하십시오

여기에 일련의 문자가 있습니다 암호처럼 보였지만 실제로는 암호가 아니므로 복사하여 붙여 넣기 만하면됩니다 해쉬라고하는 것은 비밀 키입니다 암호를 풀어서 우리가 할 일은 편집하고 암호를 우리가 원하는대로 변경합니다 패스워드가 여기있는 곳에서 패스워드를 그냥 지나치면 그냥 오른쪽으로 가라

다른 곳에 입력 할 수있는 상자처럼 거기에있는 내용을 지우고 내 자신의 강력한 암호를 생각해 내서 LastPass를 사용하고 싶습니다 LastPass를 사용하여이 암호를 여기에 안전한 암호로 복사하면됩니다 이 암호를 여기에 넣으 시겠지만,이 작업을 끝내기 전에 md5로 이동하려면 인코딩을 변경해야하므로이 작은 드롭 다운을 클릭하십시오 여기에 md5를 클릭 한 다음 이동을 클릭하십시오 우리가 입력 한 암호를 md5로 변환하려고합니다

해시와 그것이 지금과 다르다는 것을 알아 채십시오 암호를 다시 입력하면 암호가 여기에 표시됩니다 우리는 admin oops admin과 우리가 로그인 한 비밀 번호를 입력합니다 비밀번호가 변경되어 로그인 할 수있게되었습니다 모르는 경우 잠긴 경우 웹 사이트를 방문하는 가장 쉬운 방법입니다 귀하의 비밀 번호는 무엇이며 귀하의 이메일 최근 기능은 물론 작동하지 않습니다 너는이 점에 그때 너가 할 필요가있는 것을 얻을 수 없다 너의 웹 접대를 부르는이다 제공하고 그들은 당신을 도울 것입니다

다른 질문은 귀하의 웹 사이트에 문제가 있으면 알려주십시오 코멘트에 나에게 알려주거나 나와 연락하기를 그리고 나는 가르 칠 수있다 문제가있는 경우 웹 사이트를 사용하거나 문제를 해결하는 방법을 알려줍니다 감사합니다

나는 너에게 이야기 할거야 멋진 하루 보내라