이 글은 PHP의 몇 가지 일반적인 문제에 대한 요약(모음)을 제공합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
1. 문자열을 정의할 때 작은따옴표와 큰따옴표의 차이점은 무엇인가요?
작은따옴표가 큰따옴표보다 빠르게 로드됩니다.
2 echo(), print() 및 print_r()의 차이점은 무엇입니까? ?
(1)echo는 구문입니다. 하나 이상의 문자열을 출력하고 반환 값은 없습니다.
(2)print는 함수이며 배열과 객체를 출력할 수 없습니다. Outputastring, print # 🎜🎜#에는 반환 값이 있습니다.
(3)print_r은 배열을 출력할 수 있는 함수입니다. print_r은 문자열, int, float, 배열, 객체 등을 출력할 수 있는 흥미로운 함수입니다. 배열을 출력할 때 print_r은 출력이 성공하면 true를 반환하고 print_r($)을 전달할 수 있습니다. str,true)이므로 print_r은 print_r에서 처리한 값을 출력하지 않고 반환합니다. 또한 echo와 print의 경우 print보다 효율적이기 때문에 기본적으로 echo를 사용합니다.
3. 기능 분류에 따른 문자열 처리 기능은 무엇인가요? 이 기능은 무엇을 합니까?
A. 문자열 출력 함수 (1)echo $a,$b,$c...;
기능.
(2)print($a) 이 함수는 문자열을 출력합니다. 성공하면 1을 반환하고, 실패하면 0을 반환합니다.
(3)print_r($a)
(4)var_dump($a); 유형, 길이, 값을 출력할 수 있습니다
B. string 선행 및 후행 공백에 대한 함수: Trim ltrim rtrim(별칭: Chop) 두 번째 매개변수를 사용하면 지정된 문자를 제거할 수도 있습니다.
C. 문자열 길이를 가져오는 함수: addlashes()
D. 문자열 길이를 가로채는 함수: substr()#🎜 🎜#F. 문자열 함수: strstr(), strpos()
G. 문자열 바꾸기 함수: str_replace()
4에 대한 정답은 무엇입니까? 다음 질문은 무엇입니까?
1).$arr = array('james', 'tom', 'symfony'); 병합을 문자열 출력으로 병합하시겠습니까?
echo implode(‘,’,$arr);
2).$str = 'jack,james,tom,symfony'; $arr 배열의 최종 값은 무엇입니까?
$arr = explode(‘,’,$str);
3).$arr=array(3,7,2,1,'d','abc');$arr을 변경하세요. 가장 큰 것부터 가장 작은 것 순으로 정렬하고 키 값을 변경하지 않고 유지하시겠습니까?
arsort($arr); print_r($arr);4).$mail = “gaofei@163.com”; 이 이메일의 도메인(163.com)을 꺼내서 인쇄해 보세요. 대부분 몇 가지 방법을 쓸 수 있나요?
echostrstr($mail,'163');
echosubstr($mail,7);
$arr=explode("@",$mail);echo$arr[1];
5. 페이지의 문자가 깨졌습니다.
#🎜 🎜#1. 먼저 현재 파일에 문자 세트가 있는지 확인하세요. charset이 메타 태그에 기록되어 있는지 확인하세요. PHP 페이지인 경우 이 header() 함수에 charset을 지정하는지 여부도 확인할 수 있습니다.
예: #🎜 🎜#<meta http-equiv="Content-Type" content="text/html;
charset=utf-8"/>
header(“content-type:text/html;charset=utf-8”);
2. 문자셋(즉, 문자셋)이 설정되어 있다면 현재 파일
에 저장된 인코딩 형식이 문자셋셋과 일치하는지 확인합니다. 페이지에서 두 개가 통합되어야 합니다.
문자 집합이 문자 집합과 일치하는지 확인합니다. 현재 페이지에서는 둘이 통합되어야 합니다. #🎜🎜 #예: 正则表达式是用于描述字符排列模式的一种语法规则。正则表达式也叫做模式表达式。网站开发中正则表达式最常用于表单提交信息前的客户端验证。 preg_replace — 执行正则表达式的搜索和替换 用户在网站表单提交数据的时候,为了防止脚本攻击(比如 用户输入<script>alert(111);</script>),php 端接收数据的 第一个是返回结果集中的一行作为索引数组,第二个是返回 答:fopen(打开文件) 1.首现要在 php.ini 中开启文件上传; 二维数组。第一维是上传控件的 name,二维下标分别为 name/type/tmp_name/size/error. 答: 答 : header("content-type: application/octet-stream;charset=UTF-8"); //在这里加 utf-8和 ajax 是 asynchronous JavaScript JavaScript JavaScript JavaScript and xml 的 缩 写 , 是 javascript、xml、css、DOM 等多个技术的组合。'$'是 jQuer jQuer jQuer jQuery y y y 的别名. jQuery 是 Javascript 的一种框架。 简单地说会话控制就是跟踪和识别用户信息的机制。会话控制的思想就是能够在网站中跟踪一个变量,通过这个变量,系统能识别出相应的用户信息,根据这个用户信息可以得知用户权限,从而展示给用户适合于其相应权限的页面内容。 目前最主要的会话跟踪方式有 cookie,session。 1).访问与当前请求相关的会话对象 2). 대화 를 찾아보세요. 스토어 세션 정보 4). 세션 데이터 폐기 1) setcookie() 이전에는 페이지 출력이 불가능하며 공백도 허용되지 않으며 빈 흰색 줄도 허용되지 않습니다. sessionid, 현재 session_id는 session_id() 함수를 통해 얻을 수 있습니다. 1. 쿠키는 클라이언트 컴퓨터에 저장됩니다. 만료 시간이 설정되지 않은 쿠키의 경우 쿠키 값은 브라우저가 닫히는 동안 컴퓨터의 메모리에 저장됩니다. 쿠키 만료 시간이 설정되면 브라우저는 쿠키를 텍스트 파일 형식으로 하드 디스크에 저장하며, 브라우저를 다시 열어도 쿠키 값은 계속 유효합니다. 1. 세션 시작: session_start() 함수를 사용하여 시작합니다. 2. 세션 등록: $_SESSION 배열에 직접 요소를 추가하세요. 3. 본 인터넷 페이지를 쿠키 임시 폴더에 저장하면 더 나은 검색 속도를 얻을 수 있습니다. 创建 cookie:setcookie(stringcookiename,stringvalue,int expire); 可以直接在php.ini中开启session.auto_start=1或者在页面 头部session_start(); session 用来存储用户登录信息和用在跨页面传值。 相关推荐: mysql_query(“set names utf8”)。
6. 正则表达式是什么?php 中有哪些常用的跟正则相关的 函数?请写出一个 email 的正则,中国手机号码和座机号码的正则表达式?
比如验证用户名是否输入正确,密码输入是否符合要求, email、手机号码等信息的输入是否合法
在 php 中正则表达式主要用于字符串的分割、匹配、查找和
替换操作。
preg 系列函数可以处理。具体有以下几个:
stringpreg_quote(stringstr[,stringdelimiter])
转义正则表达式字符 正则表达式的特殊字符包括:.\\+*? [^]$(){}=!|:。
preg_replace-- 执行正则表达式的搜索和替换
mixed preg_replace ( mixed pattern, mixed replacement, mixed subject[,intlimit]
preg_replace_callback -- 用回调函数执行正则表达式的搜索
和替换
mixed preg_replace_callback ( mixed pattern, callback callback, mixedsubject[,intlimit])
preg_split-- 用正则表达式分割字符串
array preg_split ( string pattern, string subject [, int limit [, int flags]])
常用的正则表达式写法:
中文:/^[\u4E00-\u9FA5]+$/
手机号码:/^(86)?0?1\d{10}$/
EMAIL:
/^[\w-]+[\w-.]?@[\w-]+\.{1}[A-Za-z]{2,5}$/
密码(安全级别中) :
/^(\d+[A-Za-z]\w*|[A-Za-z]+\d\w*)$/
密码(安全级别高) :
/^(\d+[a-zA-Z~!@#$%^&(){}][\w~!@#$%^&(){}]*|[a-zA-Z~! @#$%^&(){}]+\d[\w~!@#$%^&(){}]*)$/7.preg_replace()和 str_ireplace()两个函数在使用上有什么 不同?preg_split()和 split()函数如何使用?
str_ireplace — str_replace() 的 忽 略 大 小 写 版 本 str_replace — 子字符串替换
preg_split — 用正则表达式分割字符串
split — 用正则表达式将字符串分割到数组中
8. 获取当前时间戳的函数主要有哪些?用 PHP 打印出今 天的时间,格式是2010-12-10 22:21:21?用 PHP 打印出前一天的时间格式是2010-12-10 22:21:21? 如何把2010-12-25 10:30:25变成 unix 时间戳?
echodate("Y-m-dH:i:s",strtotime(‘-1,days’));
date('Y-m-dH:i:s',time());
$unix_time = strtotime("2009-9-2 10:30:25");//变成 unix 时间戳
echodate("Y-m-dH:i:s",$unix_time);//格式化为正常时间格式
9.在 url 中用 get 传值的时候,若中文出现乱码,应该用哪个函数对中文进行编码?
时候,应该如何处理?
使用 urlencode()对中文进行编码,使用 urldecode()来解码。
使用 htmlspecialchars($_POST[‘title’])来过滤表单传参就可以避免脚本攻击。10. 说 说 mysql_fetch_row() 和 mysql_fetch_assoc() 和 mysql_fetch_array 之间有什么区别?
关联数组,而第三个既可以返回索引数组也可以返回关联数 组,取决于它的第二个参数 MYSQL_BOTH MYSQL_NUM MYSQL_ASSOC 默认为 MYSQL_BOTH$sql=”select*fromtable1”;
$result=mysql_query($sql);
mysql_fetch_array($result,MYSQL_NUM);
11. 请说出目前学过的返回是资源的函数?
imagecreatefromjpeg(png gif) — 从 JPEG
文件新建一图像
imagecreatetruecolor — 新建一个真彩色
图像
imagecopymerge — 拷贝并合并图像的一
部分
imagecopyresized — 拷贝部分图像并调
整大小
mysql_connect — 打开一个到 MySQL MySQL MySQL MySQL
服务器的连接
mysql_query();只有这执行 select 的时候成功,才返回资源, 失败返回 FALSE12. 文件上传需要注意哪些细节?怎么把文件保存到指定目录?怎么避免上传文件重名问题?
2.在 php.ini 中有一个允许上传的最大值,默认是2MB。必要
的时候可以更改;
3. 上 传 表 单 一 定 要 记 住 在 form 标 签 中 写 上 enctype="multipart/form-data";
4. 提交方式 method 必须是 post;
5. 设定 type="file" 的表单控件;
6.要注意上传文件的大小 MAX_FILE_SIZE、文件类型是否符合要求,上传后存放的路径是否存在。可以通过上传的文件名获取到文件后缀,然后使用时间戳+文件后缀的方式为文件重新命名,这样就避免了重名。可以自己设置上传文件的保存目录,与文件名拼凑形成一个文件 路径,使用 move_uploaded_file(),就可以完成将文件保存到指定目录。13. $_FILES 是几维数组?第一维和第二维的索引下标分别是什么?批量上传文件的时候需要注意什么?
14.header()函数主要的功能有哪些?使用过程中注意什么?
header()发送 http 头信息
-header("content-type:text/html; charset=utf-8");-------------------//当前页面输出内容是 html,编 码为 utf-8格式
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
-header("content-type:image/png gif jpeg");----------------------------------//当前页面输出内容的格式是图片
-header("refresh:5;url=http://www.1004javag.com/five/string.ph p");--//页面5秒后要跳转到新网址
-header("location:http://1004javag.com/five/string.php");----------//页面重定向
15. 文件下载的时候如果使用 header()函数?
在上面定义有什么区别?、??header("accept-ranges:bytes");
header("accept-length: ".filesize($filedir.$filename));
header("content-disposition: attachment; filename=".$filedir.$filename);
16. 什么是 ajax?ajax 的原理是什么?ajax 的核心技术是什 么?ajax 的优缺点是什么?
页面中用户的请求通过 ajax 引擎异步地与服务器进行通 信,服务器将请求的结果返回给这个 ajax 引擎,
最后由这个ajax引擎来决定将返回的数据显示到页面中的 指定位置。Ajax 最终实现了在一个页面的指定位置可以加载 , 另一个页面所有的输出内容。
这样就实现了一个静态页面也能获取到数据库中的返回数 据信息了。所以 ajax 技术实现了一个静态网页在不刷新整个
页面的情况下与服务器通信,
减少了用户等待时间,同时也从而降低了网络流量,增强了
客户体验的友好程度。
Ajax 的优点是:
1. 减轻了服务器端负担,将一部分以前由服务器负担的工
作转移到客户端执行,利用客户端闲置的资源进行处理;
2. 在只局部刷新的情况下更新页面,增加了页面反应速度,
使用户体验更友好。
Ajax 的缺点是不利于 seo 推广优化,因为搜索引擎无法直接 访问到 ajax 请求的内容。
ajax 的核心技术是 XMLHttpRequest,它是 javascript 中的
一个对象。17.jquery 是什么?jquery 简化 ajax 后的方法有哪些?
$.get(),$.post(),$.ajax()。$是 jQuery 对象的别名。
代码如下:$.post(异 步 访 问 的 url 地 址 , {' 参 数 名' : 参 数 值} , function(msg){
$("#result").html(msg);
});
$.get( 异 步 访 问 的 url 地 址 , {' 参 数 名 ' : 参 数 值 } , function(msg){
$("#result").html(msg);
});
$.ajax({
type:"post",
url:loadUrl,
cache:false,
data:"参数名=" + 参数值,
success:function(msg){
$("#result").html(msg);
}
});
18. 什么是会话控制?
19. 会话跟踪的基本步骤
20. 쿠키 사용 시 주의사항은 무엇인가요?
2) setcookie() 이후에 $_COOKIE['cookiename']을 호출합니다. 현재 페이지가 출력되지 않습니다. 쿠키 값을 보려면 새로 고치거나 다음 페이지로 이동해야 합니다.
3) 클라이언트는 쿠키를 다르게 처리할 수 있으며 브라우저는 숫자를 유휴 상태로 만들 수도 있습니다. 브라우저가 생성할 수 있는 최대 쿠키 수는 300개이며, 각 쿠키는 4kb를 초과할 수 없습니다. 각 웹사이트에서 설정할 수 있는 총 쿠키 수는 20개를 초과할 수 없습니다.
4) 쿠키는 클라이언트 측에 저장됩니다. 사용자가 쿠키를 비활성화하면 setcookie가 작동하지 않습니다. 그러므로 쿠키에 너무 의존하지 마십시오. 21. 세션을 사용할 때 현재 사용자를 다른 사용자와 구별하기 위해 무엇을 사용합니까?
22. 세션과 쿠키를 사용하는 단계는 무엇인가요? 세션과 쿠키의 수명주기는 무엇입니까? 세션과 쿠키의 차이점은 무엇입니까?
2. 세션은 사용자가 서버측에 저장해야 하는 정보를 저장하는 것입니다. 각 사용자의 세션 정보는 키-값 쌍처럼 서버 측에 저장됩니다. 여기서 키는 sessionid이고 값은 사용자가 저장해야 하는 정보입니다. 서버는 저장된 세션 정보가 어느 사용자에게 속하는지 구별하기 위해 sessionid를 사용합니다. 둘 사이의 가장 큰 차이점은 세션이 서버 측에 저장되는 반면 쿠키는 클라이언트 측에 저장된다는 것입니다. 세션 보안은 더 높은 반면 쿠키 보안은 약합니다.
3. 세션은 웹 개발에서 매우 중요한 역할을 합니다. 사용자가 서버의 메모리에 올바르게 로그인한 후 사용자의
정보를 기록할 수 있습니다. 사용자가 이 ID로 웹사이트의 관리 백엔드에 액세스하면 다시 로그인하지 않고도 신원 확인을 받을 수 있습니다. 올바르게 로그인하지 않은 사용자는 세션 공간을 할당받지 못하며, 관리 백그라운드 접속 주소를 입력하더라도 페이지 내용을 볼 수 없습니다. 사용자의 페이지 조작 권한은 세션을 통해 결정됩니다. 세션 사용 단계:
3. 세션 사용: 세션이 비어 있는지 또는 등록되었는지 확인합니다. 가 이미 존재하는 경우 일반 배열처럼 사용합니다.
4. 세션 삭제:
1. 단일 세션을 삭제하려면 $_SESSION=array()를 사용하세요.
3. session_destroy() 함수를 사용하여 세션을 완전히 삭제합니다.
쿠키는 어떻게 사용하나요?
1. 사용자 방문에 대한 일부 정보를 기록합니다
读取 cookie:通过超级全局数组$_COOKIE 来读取浏览器端 的 cookie 的值。
删除 cookie:有两种方法
1.手工删除方法:
右击浏览器属性,可以看到删除 cookies,执行操作即可将所 有 cookie 文件删除。
2.setcookie()方法:
跟设置 cookie 的方法一样,不过此时将 cookie 的值设置为 空,有效时间为0或小于当前时间戳。 23. 设置或读取 session 之前,需要做什么?
开启 session,session_start()前面不能有任何输出,包括空行。24. 在实际开发中,session 在哪些场合使用?
1)常用在用户登录成功后,将用户登录信息赋值给 session;
2)用在验证码图片生成,当随机码生成后赋值给 session。25. 注销 session 会话的形式有几种?
unset() $_SESSION=array();
session_destroy();
위 내용은 PHP의 몇 가지 일반적인 문제 요약(컬렉션)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

PHP는 동적 웹 개발 및 서버 측 응용 프로그램에 사용되는 서버 측 스크립팅 언어입니다. 1.PHP는 편집이 필요하지 않으며 빠른 발전에 적합한 해석 된 언어입니다. 2. PHP 코드는 HTML에 포함되어 웹 페이지를 쉽게 개발할 수 있습니다. 3. PHP는 서버 측 로직을 처리하고 HTML 출력을 생성하며 사용자 상호 작용 및 데이터 처리를 지원합니다. 4. PHP는 데이터베이스와 상호 작용하고 프로세스 양식 제출 및 서버 측 작업을 실행할 수 있습니다.

PHP는 지난 수십 년 동안 네트워크를 형성했으며 웹 개발에서 계속 중요한 역할을 할 것입니다. 1) PHP는 1994 년에 시작되었으며 MySQL과의 원활한 통합으로 인해 개발자에게 최초의 선택이되었습니다. 2) 핵심 기능에는 동적 컨텐츠 생성 및 데이터베이스와의 통합이 포함되며 웹 사이트를 실시간으로 업데이트하고 맞춤형 방식으로 표시 할 수 있습니다. 3) PHP의 광범위한 응용 및 생태계는 장기적인 영향을 미쳤지 만 버전 업데이트 및 보안 문제에 직면 해 있습니다. 4) PHP7의 출시와 같은 최근 몇 년간의 성능 향상을 통해 현대 언어와 경쟁 할 수 있습니다. 5) 앞으로 PHP는 컨테이너화 및 마이크로 서비스와 같은 새로운 도전을 다루어야하지만 유연성과 활발한 커뮤니티로 인해 적응력이 있습니다.

PHP의 핵심 이점에는 학습 용이성, 강력한 웹 개발 지원, 풍부한 라이브러리 및 프레임 워크, 고성능 및 확장 성, 크로스 플랫폼 호환성 및 비용 효율성이 포함됩니다. 1) 배우고 사용하기 쉽고 초보자에게 적합합니다. 2) 웹 서버와 우수한 통합 및 여러 데이터베이스를 지원합니다. 3) Laravel과 같은 강력한 프레임 워크가 있습니다. 4) 최적화를 통해 고성능을 달성 할 수 있습니다. 5) 여러 운영 체제 지원; 6) 개발 비용을 줄이기위한 오픈 소스.

PHP는 죽지 않았습니다. 1) PHP 커뮤니티는 성능 및 보안 문제를 적극적으로 해결하고 PHP7.x는 성능을 향상시킵니다. 2) PHP는 최신 웹 개발에 적합하며 대규모 웹 사이트에서 널리 사용됩니다. 3) PHP는 배우기 쉽고 서버가 잘 수행되지만 유형 시스템은 정적 언어만큼 엄격하지 않습니다. 4) PHP는 컨텐츠 관리 및 전자 상거래 분야에서 여전히 중요하며 생태계는 계속 발전하고 있습니다. 5) Opcache 및 APC를 통해 성능을 최적화하고 OOP 및 설계 패턴을 사용하여 코드 품질을 향상시킵니다.

PHP와 Python에는 고유 한 장점과 단점이 있으며 선택은 프로젝트 요구 사항에 따라 다릅니다. 1) PHP는 웹 개발, 배우기 쉽고 풍부한 커뮤니티 리소스에 적합하지만 구문은 현대적이지 않으며 성능과 보안에주의를 기울여야합니다. 2) Python은 간결한 구문과 배우기 쉬운 데이터 과학 및 기계 학습에 적합하지만 실행 속도 및 메모리 관리에는 병목 현상이 있습니다.

PHP는 동적 웹 사이트를 구축하는 데 사용되며 해당 핵심 기능에는 다음이 포함됩니다. 1. 데이터베이스와 연결하여 동적 컨텐츠를 생성하고 웹 페이지를 실시간으로 생성합니다. 2. 사용자 상호 작용 및 양식 제출을 처리하고 입력을 확인하고 작업에 응답합니다. 3. 개인화 된 경험을 제공하기 위해 세션 및 사용자 인증을 관리합니다. 4. 성능을 최적화하고 모범 사례를 따라 웹 사이트 효율성 및 보안을 개선하십시오.

PHP는 MySQLI 및 PDO 확장 기능을 사용하여 데이터베이스 작업 및 서버 측 로직 프로세싱에서 상호 작용하고 세션 관리와 같은 기능을 통해 서버 측로 로직을 처리합니다. 1) MySQLI 또는 PDO를 사용하여 데이터베이스에 연결하고 SQL 쿼리를 실행하십시오. 2) 세션 관리 및 기타 기능을 통해 HTTP 요청 및 사용자 상태를 처리합니다. 3) 트랜잭션을 사용하여 데이터베이스 작업의 원자력을 보장하십시오. 4) SQL 주입 방지, 디버깅을 위해 예외 처리 및 폐쇄 연결을 사용하십시오. 5) 인덱싱 및 캐시를 통해 성능을 최적화하고, 읽을 수있는 코드를 작성하고, 오류 처리를 수행하십시오.

PHP에서 전처리 문과 PDO를 사용하면 SQL 주입 공격을 효과적으로 방지 할 수 있습니다. 1) PDO를 사용하여 데이터베이스에 연결하고 오류 모드를 설정하십시오. 2) 준비 방법을 통해 전처리 명세서를 작성하고 자리 표시자를 사용하여 데이터를 전달하고 방법을 실행하십시오. 3) 쿼리 결과를 처리하고 코드의 보안 및 성능을 보장합니다.


핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

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

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

WebStorm Mac 버전
유용한 JavaScript 개발 도구
