PHP 开发者实践
PHP Developer Prepares
坚持了 5 年的创业项目决定结束了(行业垂直搜索方向,理想很美好、现实很骨感),作为没混好的草根站长 & 没被风吹起来的小互联网公司技术合伙人,个人基本见证了这几年 PHP 环境的发展(当然主要归功于互联网创业风潮大爆发),感受了一些 PHP 团队和从业者的现状;同时,我们自身在 PHP 研发团队组建过程中也遇到了不少问题,一直想把创业过程中遇到的这些团队实践相关问题整理、总结一下,目前只是个初始版本,欢迎大家拍砖 & 加入!
技术的发展日新月异,我会持续维护、跟进这个项目,欢迎各位有兴趣的朋友 提交建议、问题 - Issue或 参与贡献、分享 - Pull Request。
- 本项目排版遵循 文案排版指北和 Stack Overflow Markdown规范
-
本项目使用了 GitBook 并已发布在 GitBook.com上,关于如何使用 Gitbook 编写、生成、发布一本在线图书,请移步 GitBook Documentation或 Gitbook 使用入门 - 中文
- GitBook.com 是一个很优秀的社区,上面有很多优秀作者自出版自己的著作,就好像 Leanpub
- Gitbook 是 GitBook.com 提供的一个开源的基于 Node.js 开发的配套工具 - Github 地址
- 开发过程中遇到的绝大多数问题实际上都可以通过搜索引擎找到,关于搜索引擎使用技巧,请参考 如何用好 Google 等搜索引擎?
-
开发过程中遇到问题在论坛、社区中提问是很常见的情况,如何让他人快速理解你的问题、同时自己如何在提问中学习成长,推荐阅读: How To Ask Questions The Smart Way, 提问的智慧 - 中文版或提问的智慧 - 图片版
「《提问的智慧》就是一个敲门砖,它把黑客间的礼仪和准则明白地写下来。它会让你了解到一个事实,为什么那些看起来很牛的人几乎从不提问,似乎他们一进入这个行业就是牛人了。不是的,他们也有问题,但是通常在提问之前就自己解决了;不是因为他们本来就懂得怎么解决,而是解决问题的经历让他们成为牛人;最终,你只会看到网络上多了一篇文章:关于解决XXX问题的方案。」-- Rei
-
因为关于如何使用 PHP 语言本身相关资料已有很多,本文将尽量不涉及 PHP 语言本身、且优先引用已有资料,主要围绕关心 PHP 项目开发技巧和具体实践,通过相关工具和经验的分享,使大家在项目中更好的使用 PHP 技术。
在线阅读
重要说明:正在持续修改之中,大部分章节都没有写完,正式发布还需要一段时间,所有内容随时可能发生变动。
- http://ryancao.gitbooks.io/php-developer-prepares/content/
如何参与
本项目在 Github 上维护,欢迎参与: https://github.com/zacao/php-developer-prepares。
- 在 GitHub 上把本项目 fork到自己的仓库,如
/php-developer-prepares,然后 clone到本地,并设置用户信息。 $ git clone git@github.com:<your-username>/php-developer-prepares.git$ cd php-developer-prepares$ git config user.name "yourname"$ git config user.email "your email"
- 修改代码后提交,并推送到自己的仓库。
$ #do some change on the content$ git commit -am "Fix issue #1: change helo to hello"$ git push
- 在 GitHub 网站上提交 pull request。
- 定期使用项目仓库内容更新自己仓库内容。
$ git remote add upstream https://github.com/zacao/php-developer-prepares$ git fetch upstream$ git checkout master$ git rebase upstream/master$ git push -f origin master
授权许可
本文采用创意共享 「署名-非商业性使用」许可证(Creative Commons Attribution-NonCommercial license)。所有内容不仅可以免费阅读,还可以自由使用(比如转载),只需遵守两个条件:
-
署名:必须保留原作者的署名。
-
非商业性使用:除非得到正式许可,否则不得用于商业目的。

phpidifiesauser의 sssessionusessessioncookiesandssessionids.1) whensession_start () iscalled, phpgeneratesauniquessessionStoredInacookienamedPhpsSessIdonSeuser 'sbrowser.2) thisidallowsphptoretrievessessionDataTromServer.

PHP 세션의 보안은 다음 측정을 통해 달성 할 수 있습니다. 1. Session_REGENEREAT_ID ()를 사용하여 사용자가 로그인하거나 중요한 작업 일 때 세션 ID를 재생합니다. 2. HTTPS 프로토콜을 통해 전송 세션 ID를 암호화합니다. 3. 세션 _save_path ()를 사용하여 세션 데이터를 저장하고 권한을 올바르게 설정할 보안 디렉토리를 지정하십시오.

phpsessionfilesarestoredInTheRectorySpecifiedBysession.save_path, 일반적으로/tmponunix-likesystemsorc : \ windows \ temponwindows.tocustomizethis : 1) austession_save_path () toSetacustomDirectory, verlyTeCustory-swritation;

toretrievedatafromAphPsession, startSessionstart_start () andaccessvariblesinthe $ _sessionArray.forexample : 1) startthessession : session_start (). 2) retrievedata : $ _ session [ 'username']; echo "Welcome,". $ username;

세션을 사용하여 효율적인 쇼핑 카트 시스템을 구축하는 단계에는 다음이 포함됩니다. 1) 세션의 정의와 기능을 이해합니다. 세션은 요청에 따라 사용자 상태를 유지하는 데 사용되는 서버 측 스토리지 메커니즘입니다. 2) 쇼핑 카트에 제품 추가와 같은 기본 세션 관리를 구현합니다. 3) 제품 수량 관리 및 삭제 지원 고급 사용으로 확장; 4) 세션 데이터를 지속하고 보안 세션 식별자를 사용하여 성능 및 보안을 최적화합니다.

이 기사는 PHP의 인터페이스를 생성, 구현 및 사용하는 방법을 설명하여 코드 구성 및 유지 관리에 대한 이점에 중점을 둡니다.

이 기사에서는 PHP의 암호 해싱에 대한 Crypt ()와 Password_hash ()의 차이점에 대해 논의하여 최신 웹 애플리케이션에 대한 구현, 보안 및 적합성에 중점을 둡니다.

기사는 입력 유효성 검사, 출력 인코딩 및 OWASP ESAPI 및 HTML 청정기와 같은 도구를 통해 PHP의 크로스 사이트 스크립팅 (XSS) 방지에 대해 논의합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

드림위버 CS6
시각적 웹 개발 도구

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.
