php教程 php手册 简单学习php遇到的主要问题

简单学习php遇到的主要问题

Jun 06, 2016 pm 07:57 PM
p php 기본 공부하다 첫 번째 단순한 만나다 질문

到今天为止第一个PHP写的网站已经快要见亮了,中午后台部分全部功能完成意味着以后做别的站可以拿来就用,不用再费太多精力编写了,现在就简单写写学习php的这一个月我遇到的主要问题。 问题1:环境搭配 php最经典的组合当然是LAMP(Linux+Apache+MySQL+PHP)

    到今天为止第一个PHP写的网站已经快要见亮了,中午后台部分全部功能完成意味着以后做别的站可以拿来就用,不用再费太多精力编写了,现在就简单写写学习php的这一个月我遇到的主要问题。

问题1:环境搭配

php最经典的组合当然是LAMP(Linux+Apache+MySQL+PHP)了,不过我没有条件和精力弄Linux所以用Windows 2003代替Linux了,自己调试用,又不是做服务器,所以不要求性能足够用了。

本身我的机器是Win2003+IIS+Framework环境能跑起来ASP和.net,并且装有JDK+tomcat+Oracle还能跑起来JSP,本打算不破坏这些环境再安装apache和mysql,不过困难重重啊。。

于是放弃jsp环境,并且用ghost备份了asp环境,删掉IIS后重新安装PHP环境,环境还是很好搭的,在百度上轻易的找到教程照着安装就可以Apache+PHP+MySQL+PHPMyAdmin,没有安装Zend,以后深入学习的时候再说吧,没有研究明白多个网站的时候怎么存在不同的路径运行在不同端口,也先不管了,现在80端口跑吧,环境调试好了以后备份了一个ghost,算是php环境成功搭起来了。

问题2:对utf-8编码文件的标记BOM导致的页面空行

这个问题以前在学习xhtml+css的时候遇到过,那时候是因为文档声明类型前面加别的代码了或者没有写文档声明类型xhtml1.0却用w3c的标准做页面导致的,起初我以为也是把require写在文档声明前面出的问题呢,后来反复调试发现不是这么简单,后来上百度搜索了很多关于require引起空行的问题,有一个牛人提到了要在dreamweaver里面ctrl+j把utf-8编码的BOM去掉,当时也不懂BOM是啥,说去掉就去掉吧,确实解决问题了,这算是把这一关过去了,不过后面还有utf-8的问题呢,也是跟这个有关系。

问题3:php下checkbox的取值问题

这是我发现php唯一一个不方便的地方,不像asp那样,所有同名的checkbox的值存成一个集合,php只能取同名里最后一个checkbox的值,在做多数据where in (aa,bb,cc,dd)查询的时候很不方便,只能用js+一个hidden input的方法实现,虽然有点小麻烦,不过不是大问题,很容易就解决了,上网查了一下也确实只有这么才能解决!

问题4:Access库转到MySQL的问题

毕竟数据库已经设计好了,再在PHPMyAdmin中建一次表也很麻烦,索性找个软件来直接转库,还不错让我找到各爆好用的软件,不过全英文界面,名字没记住,明天去公司看看再发上来,库很轻松的转过来了,但是我手很贱,看到MySQL里面的data文件夹下有和我建的数据库一样名字的文件夹,我以为有这个文件夹就不用建库倒库了,一时兴起把没用的都删掉了,问题来了PHPMyAdmin连不上库了,这个倒是好解决,重装了一次MySQL解决问题,可是我没备份就换回ASP环境,再换回来的时候MySQL出大问题了,重装都不管用了,上百度一顿神搜,最终csdn的牛人给了答案“把libmysql.dll和php5ts.dll考到system32下”,解决问题。

问题5:NTFS权限问题。

这个问题ASP上也出现过,不过换在PHP环境就没多一份心往这方面想,所以足足憋了我一上午,发现这个问题是在朋友的服务器上,前一天喝酒正好认识一个哥们儿遇到php建站的问题了,接着酒劲我就装了一把,说我php多牛多牛啊,知道的我才学2星期,哈哈哈,第二天就给人家解决问题吧,牛都吹出去了也不能不管人家,连上服务器一看原来是安装phpcms的时候遇到了MySQL问题安装无法继续进行了,百度上一顿神搜找到问题关键了是NTFS权限问题,这就好解决了,加个Internet来宾用户就解决了,估计自己以后也会遇到这问题,所以早遇到比晚遇到强,关键时候知道怎么回事儿!

问题6:Cookies读写问题。

这个问题应该不是很大的问题,只不过当天马上下班了,没有来得及解决,第二天很轻易的就搞定了,刚开始学习肯定语句掌握的不多,以为$_COOKIE["xxx"]既可以读也可以写呢,用到这儿的时候才发现部对路子,上网随便一搜“php cookies 写入”答案就来了,setcookie即可,真简单啊。

问题7:php分页。

用ASP的时候SQL语句也没深入研究,根本就不知道limit这回事儿,我说以前看淘宝、百度的分页上有0 20、20 20这样的参数传递呢,都是干分页用的,稍补了一堂SQL课程问题迎刃而解,页数判断那里原理都一样就没当成问题,一路绿灯解决战斗!

问题8:创建utf-8文件写入中文乱码问题,问题2的后续问题。

一开始就把这个功能做好了,只不过没用中文测试,后来做到有中文的地方发现这里不灵了,哎呀那个头疼啊,这个问题收拾了我好几天,一直没解决,为了不被这个问题困扰,所以就先用英文写入把这里条过去了,昨天必须得解决这里了,所以就硬下头皮整吧,还是BOM的签名问题,以下均为我自己理解,不知道对不对,Windows环境识别UTF-8与ANSI文件靠的是UTF-8文件前的一个叫做BOM签名的东西,这个东西普通的文本编辑器是看不到的 xEF xBF xEE好像是这三个16进制字符,反正是三个东西,问题2里毛病也是他们三个整出来的,UTF-8在Windows下虽然要用这三个家伙区分,在php下确实没有用的东西,要不问题2里面为啥要去掉BOM签名呢,怪就怪我在做ASP的时候遇到过同样的UTF-8文件写入中文乱码问题,所以就留了个心眼,先在网上艘了一个UTF-8文件在php写入的函数,里面就把那三个讨厌的东西加进去了,哎呀我去,这就是聪明反被聪明误,这顿调试就是不行啊,后来我也是恍然大悟,把这三个家伙去掉了,问题解决了,那个畅快啊。

还有很多小问题就不细说了,比如$的转义符是chr(36)啊,SQL中的关键词from啊(在asp中不是关键词),时间函数的使用(巨方便,比ASP的用着舒服)。

经过将近一个月时间的学习发现php确实很强大,而且很好学,前提是有一门Web服务器端语言基础,感觉有很多ASP上需要重点考虑的问题在php上已经不是问题了,都替你想好了,而且php速度很快,没有用Zend我就能感觉出比ASP+Access要快很多了,jsp和.net在速度上根本不能比的,代码也很简捷,除了我说的checkbox稍微麻烦一些,其他地方代码都要比asp精简,好多地方都很灵活,比如变量的定义,$开头的变量让命名少了很多约束,很多要用连字符把字符串和变量连起来使用的地方因为有$的存在都不用连字符了,因为$代表变量,所以不用特别强调,总之php是很好很强大,真的很适合做网站呢。

下一步学习在熟悉语句语法的同时,要加强自己面向对象的思想,php真正的强大还在后面呢!

简单学习php遇到的主要问题

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

PHP에서 HTML/XML을 어떻게 구문 분석하고 처리합니까? PHP에서 HTML/XML을 어떻게 구문 분석하고 처리합니까? Feb 07, 2025 am 11:57 AM

이 튜토리얼은 PHP를 사용하여 XML 문서를 효율적으로 처리하는 방법을 보여줍니다. XML (Extensible Markup Language)은 인간의 가독성과 기계 구문 분석을 위해 설계된 다목적 텍스트 기반 마크 업 언어입니다. 일반적으로 데이터 저장 AN에 사용됩니다

문자열로 모음을 계산하는 PHP 프로그램 문자열로 모음을 계산하는 PHP 프로그램 Feb 07, 2025 pm 12:12 PM

문자열은 문자, 숫자 및 기호를 포함하여 일련의 문자입니다. 이 튜토리얼은 다른 방법을 사용하여 PHP의 주어진 문자열의 모음 수를 계산하는 방법을 배웁니다. 영어의 모음은 A, E, I, O, U이며 대문자 또는 소문자 일 수 있습니다. 모음이란 무엇입니까? 모음은 특정 발음을 나타내는 알파벳 문자입니다. 대문자와 소문자를 포함하여 영어에는 5 개의 모음이 있습니다. a, e, i, o, u 예 1 입력 : String = "Tutorialspoint" 출력 : 6 설명하다 문자열의 "Tutorialspoint"의 모음은 u, o, i, a, o, i입니다. 총 6 개의 위안이 있습니다

JWT (JSON Web Tokens) 및 PHP API의 사용 사례를 설명하십시오. JWT (JSON Web Tokens) 및 PHP API의 사용 사례를 설명하십시오. Apr 05, 2025 am 12:04 AM

JWT는 주로 신분증 인증 및 정보 교환을 위해 당사자간에 정보를 안전하게 전송하는 데 사용되는 JSON을 기반으로 한 개방형 표준입니다. 1. JWT는 헤더, 페이로드 및 서명의 세 부분으로 구성됩니다. 2. JWT의 작업 원칙에는 세 가지 단계가 포함됩니다. JWT 생성, JWT 확인 및 Parsing Payload. 3. PHP에서 인증에 JWT를 사용하면 JWT를 생성하고 확인할 수 있으며 사용자 역할 및 권한 정보가 고급 사용에 포함될 수 있습니다. 4. 일반적인 오류에는 서명 검증 실패, 토큰 만료 및 대형 페이로드가 포함됩니다. 디버깅 기술에는 디버깅 도구 및 로깅 사용이 포함됩니다. 5. 성능 최적화 및 모범 사례에는 적절한 시그니처 알고리즘 사용, 타당성 기간 설정 합리적,

이전에 몰랐던 후회되는 PHP 함수 7가지 이전에 몰랐던 후회되는 PHP 함수 7가지 Nov 13, 2024 am 09:42 AM

숙련된 PHP 개발자라면 이미 그런 일을 해왔다는 느낌을 받을 것입니다. 귀하는 상당한 수의 애플리케이션을 개발하고, 수백만 줄의 코드를 디버깅하고, 여러 스크립트를 수정하여 작업을 수행했습니다.

PHP에서 늦은 정적 결합을 설명하십시오 (정적 : :). PHP에서 늦은 정적 결합을 설명하십시오 (정적 : :). Apr 03, 2025 am 12:04 AM

정적 바인딩 (정적 : :)는 PHP에서 늦은 정적 바인딩 (LSB)을 구현하여 클래스를 정의하는 대신 정적 컨텍스트에서 호출 클래스를 참조 할 수 있습니다. 1) 구문 분석 프로세스는 런타임에 수행됩니다. 2) 상속 관계에서 통화 클래스를 찾아보십시오. 3) 성능 오버 헤드를 가져올 수 있습니다.

php magic 방법 (__construct, __destruct, __call, __get, __set 등)이란 무엇이며 사용 사례를 제공합니까? php magic 방법 (__construct, __destruct, __call, __get, __set 등)이란 무엇이며 사용 사례를 제공합니까? Apr 03, 2025 am 12:03 AM

PHP의 마법 방법은 무엇입니까? PHP의 마법 방법은 다음과 같습니다. 1. \ _ \ _ Construct, 객체를 초기화하는 데 사용됩니다. 2. \ _ \ _ 파괴, 자원을 정리하는 데 사용됩니다. 3. \ _ \ _ 호출, 존재하지 않는 메소드 호출을 처리하십시오. 4. \ _ \ _ get, 동적 속성 액세스를 구현하십시오. 5. \ _ \ _ Set, 동적 속성 설정을 구현하십시오. 이러한 방법은 특정 상황에서 자동으로 호출되어 코드 유연성과 효율성을 향상시킵니다.

See all articles