개발 환경 wamp3.06 + 젠드 스튜디오 12 디버그 구성

의 image.png

<?php
$fileName = "php大师.test.php";
//补充程序,显示文件名(不包括扩展名)
$start = strrpos($fileName, "."); $newStr = substr($fileName,0, $start); var_dump ( $newStr ); ?>
<?php
for($i=100;$i<1000;$i++){ if(($i*$i)%1000==$i) { echo $i; echo "<br/>"; } } ?> 
<?php
$x = "hello";
switch ($x) {
    case 1 : echo "Number 1"; break; case 2 : echo "Number 2"; break; case "hello" : echo "hello"; break; default : echo "No number between 1 and 3"; } ?> 
<?php
$students = array(array("name"=>"张三","age"=>25,"height"=>180),array("name"=>"李四","age"=>22,"height"=>170)); echo $students[0]["name"]; echo "<br/>"; echo $students[1]["name"]; ?> 
<?php
// 显示右边n个字符
$n = 5;
$oldStr = "dsfasfasf"; $rightStr = subStr ( $oldStr, strlen($oldStr) - $n ); var_dump ( $rightStr ); ?>
<html> <body>
<form action="welcome.php" method="post">  Name: <input type="text" name="name" />  Age: <input type="text" name="age" />  <input type="submit" /> </form> </body> </html> 
好好学习,天天向上
<br/>
<?php
echo "hello world"; define("ABC",1000); var_dump(defined("ABC")); echo "<br/>"; echo constant("ABC"); echo PHP_OS; echo "<br/>"; echo PHP_VERSION; echo "<br/>"; echo __FILE__; define('NAME','php'); define('NAME','linux'); echo NAME; ?> <img src="/test/a.jpg"></img>

포트 번호를 수정

의 image.png

NETSTAT 네트워크 명령을 통해 프로세스 ID를 찾을 수 -aon

의 image.png

PHP를 배우고

의 image.png

상수는 일반적으로 대문자로 구성되어, 상수는 한 번만 정의 할 수 있습니다

bool define ( string name, mixed value [, bool case_insensitive] )
bool defined ( string name )

<?php
echo "中文测试<br/>";
print "hello world!"; echo "<br/>"; echo "<img src='/test/a.jpg'></img>"; define("PI",3.14); var_dump(defined("Pi")); echo PHP_OS; echo "<br/>"; echo PHP_VERSION; echo "<br/>"; echo __FILE__; ?>

명명 상수, 변수 :
문자는 문자, 숫자, 밑줄 다음에 밑줄로 시작

$로 시작하는 이름 변수의 첫번째 사용 후 변수 할당
또한 문자열을 저장할 수있는 디지털 저장할 수있는 동일한 변수, 즉, 당신은 모든 유형의 데이터를 저장할 수있는
데이터 유형을 지정하지 않은 변수를 사용하기 위해,하지만 할당해야합니다

찾는 문자열 길이 : INT 나 strlen (문자열 문자 이름)
INT strpos : 문자열 위치는 처음 발견 찾을 수
의 하위 문자열의 마지막 발생 찾기 위치 : strrpos를 int로

우측 문자 n 개의 문자열로 이루어진 문자열 찾기
또는 - SUBSTR ($ n은 원래 문자열) : SUBSTR (원본 문자열, 나 strlen (원본 문자열) - $ n을)를

파일 이름 확장자 스트립

$dotpos = strpos($fileName,".");
echo substr($fileName,0, $dotpos);
$y = $x++ 相当于{$y=$x; $x=$x+1;} $y = $x-- 相当于{$y=$x; $x=$x-1;} $y = ++$x 相当于{$x=$x+1; $y=$x;} $y = $x-- 相当于{$x=$x-1; $y=$x;}
对于表达式:A && B,如果A为假,则不再计算表示式B的值
对于表达式:A || B,如果A为真,则不再计算表示式B的值

날짜 함수는 지정된 형식의 날짜 형식을 설정합니다

构造数组:$names = array("a","b","c"); 
访问数组元素:$names[0]、 $names[1]、 $names[2].

기능 구성하는 문자열의 복수의 스트링의 어레이로 분할 폭발

연관 배열
방법 "버튼"=> 값

데이터 유형
부울 유형
정수형
플로트
문자열

의사 유형
을 혼합, 숫자, 무효 콜백

<?php
// 求1!+2!....+10!

// 声明一个控制变量,初始化
$i = 1; // 声明一个存储和的变量 $sum = 0; // 声明一个变量存储n!,初始化化为1; $rank = 1; // 计算$i的阶乘,计算完马上累加科 while ( $i <= 10 ) { // 计算$i!= ($i-1)!*$i $rank *= $i; // 累加 $sum += $rank; // 改变循环变量值 $i ++; } echo $sum . "<br/>"; // 求1!+2!....+10! $x = 1; $sum2 = 0; while ( $x <= 10 ) { // 计算$x! $rank2 = 1; $y = 1; while ( $y <= $x ) { $rank2 *= $y; $y ++; } // 累加 $sum2 += $rank2; // 改变循环变量值 $x ++; } echo $sum2 . "<br/>"; // 求1.....100之间素数 // 8 = 2*4 7是素数,因为7/2 7/3 7/4....7/6,7不能被整除 for($i = 2; $i <= 100; $i ++) { // 假设是素数 $isPrime = true; //除数不用到$i-1,到sqrt($i) for($j = 2; $j <= sqrt($i); $j ++) { if ($i % $j == 0) { $isPrime = false; break; } } //验证假设有没有被修改 if ($isPrime == true) { echo $i . " "; } } $arr=array("one", "two", "three"); //依次取出数组每一个元素放到$aa foreach ($arr as $aa){ echo $aa. " "; } echo "<br/>"; // 求1!+2!....+10! function Rank($n){ $rank = 1; for($i=1;$i<=$n;$i++){ $rank *= $i; } return $rank; } $sum = 0; for($i=1;$i<=10;$i++){ $sum += Rank($i); } echo $sum; ?>

의 image.png

의 image.png

의 image.png

의 image.png

의 image.png

의 image.png

체크인

의 image.png

사용자 정의 함수 템플릿

의 image.png

의 image.png

개발 환경 : wamp3.06 + 젠드 스튜디오 12
디버그 구성

PHP 설정 파일 php.ini 파일을 엽니 다

의 image.png

Xdebug는 전에 모든 문자를 제거합니다 ';', 즉 내장 디버거 WAMP의 사용을 말을하는 것입니다

의 image.png

의 image.png

서버에 대한 액세스를 허용

의 image.png

서버에 액세스 할 수 있도록 httpd.conf를 수정

의 image.png

의 image.png

의 image.png

젠드 스튜디오 세트

의 image.png

의 image.png

의 image.png

의 image.png

Servers
配置local Apache HTTP Server

의 image.png

의 image.png

의 image.png

配置exe文件
의 image.png

의 image.png

配置debug

의 image.png

修改Document Root为

의 image.png

의 image.png

의 image.png

配置默认字符集

의 image.png

配置默认字体大小

의 image.png

의 image.png

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <?php // if((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"] == // "image/jpeg") || ($_FILES["file"]["type"] == "image/pjpeg")) && // ($_FILES["file"]["size"] < 20000)) { // if ($_FILES["file"]["error"] > 0) { // echo "Return Code: " . $_FILES["file"]["error"] . "<br />"; // } // else { if (file_exists ( "upload/" . $_FILES ["file"] ["name"] )) { echo $_FILES ["file"] ["name"] . " already exists. "; } else { $newname = iconv ( "utf-8", "gb2312", $_FILES ["file"] ["name"] ); move_uploaded_file ( $_FILES ["file"] ["tmp_name"], "upload/" . $newname ); // move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" // .$_FILES["file"]["name"]); echo "Stored in: " . "upload/" . $_FILES ["file"] ["name"]; } // } // } else { echo "Invalid file"; } ?> </body> </html>
<html>
<body>
<?php $week = array("星期日","星期一","星期二","星期三","星期四","星期五","星期六"); $day = date("w"); $mydate = date("你好! 现在是Y年n月j日H点i分,$week[$day]"); echo $mydate; ?> </body> </html>
<?php  
    session_start(); 
    if(isset($_SESSION['user'])){ header("Location:main.php");//自动跳转到main.php }else{ //获取用户输入 $username = $_POST [ 'username' ]; $passcode = $_POST [ 'passcode' ]; $cookie = $_POST [ 'cookie' ]; //判断用户是否存在,密码是否正确 if ($username =="hhh" && $passcode == "12345") { $_SESSION['user']=$username; header("Location:main.php" );//自动跳转到main.php } else{ echo "用户名或密码错误"; } } ?>
<?php header('Content-type:text/html;charset=utf-8'); ?>
<html> <head> <meta http-equiv= "Content-Type" content=" text/html; charset=UTF-8"> </head> <body> <?php if (isset ( $_COOKIE ["username"] )) { header ( "location: main1.php" ); } else { $username = $_POST ['username']; $passcode = $_POST ['passcode']; $cookie = $_POST ['cookie']; if ($username == "hhh" && $passcode == "12345") { switch ($cookie) { case 0 : setcookie ( "username", $username ); break; case 1 : setcookie ( "username", $username, time () + 24 * 60 * 60 ); break; case 2 : setcookie ( "username", $username, time () + 30 * 24 * 60 * 60 ); break; case 3 : setcookie ( "username", $username, time () + 365 * 24 * 60 * 60 ); break; } header ( "location: main.php" ); } else { echo ""; } } ?> </body> </html>

发送邮箱

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <html> <body> <?php if (isset($_REQUEST['emailto'])) { $emailto = $_REQUEST['emailto']; $subject = $_REQUEST['subject']; $message = $_REQUEST['message']; if(mail($emailto,$subject,$message,"From:[email protected]")){ echo "谢谢使用本程序!"; }else{ echo "未能发送成功!"; } }else{ echo "<form method='post' action='sendemail.php'>EmailTo:<input name='emailto' type='text' /><br />Subject: <input name='subject' type='text' /><br />Message:<br /><textarea name='message' rows='15' cols='40'></textarea><br /><input type='submit' /></form>"; } ?> </body> </html>

PHP Date() 函数可把时间戳格式化为可读性更好的日期和时间

语法

date(format,timestamp)
d - 月中的天 (01-31) 
m - 当前月,以数字计 (01-12) Y - 当前的年(四位数) 
<?php 
  echo date("Y/m/d"); 
  echo "<br />"; echo date("Y.m.d"); echo "<br />"; echo date("Y-m-d"); ?>

PHP 引用文件
include() 或 require()
它们处理错误的方式不同
include() 函数会生成一个警告
require() 函数会生成一个致命错误

PHP 文件处理

fopen ( string $filename , string $mode )

关闭文件

fclose() 函数用于关闭打开的文件

逐行读取文件

fgets() 函数用于从文件中逐行读取文件

PHP 文件上传

<html> <body> 
  <form action="upload_file.php" method="post" enctype="multipart/form-data"> <label for="file">Filename:</label> <input type="file" name="file" id="file" /> <br /> <input type="submit" name="submit" value="Submit" /> </form> </body> </html> 

标签的 enctype 属性规定了在提交表单时要使用哪种内容类型。在表单需要二进制数据时,比如文件内容,请使用 “multipart/form-data”。

 标签的 type=“file” 属性规定了应该把输入作为文件来处理。

PHP 的全局数组 $_FILES,存放了上传到服务器的文件的所有信息

$_FILES["file"]["name"] - 被上传文件的名称 
$_FILES["file"]["type"] - 被上传文件的类型 
$_FILES["file"]["size"] - 被上传文件的大小 $_FILES["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称 $_FILES["file"]["error"] - 由文件上传导致的错误代码

“upload_file.php”文件

<?php if ($_FILES["file"]["error"] > 0) {  echo "Error: " . $_FILES["file"]["error"] . "<br />"; } else {  echo "Upload: " . $_FILES["file"]["name"] . "<br />";  echo "Type: " . $_FILES["file"]["type"] . "<br />";  echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";  echo "Stored in: " . $_FILES["file"]["tmp_name"]; } ?> 

保存被上传的文件

<?php
 if ((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"] == "image/jpeg") || ($_FILES["file"]["type"] == "image/pjpeg")) && ($_FILES["file"]["size"] < 20000)) { if ($_FILES["file"]["error"] > 0) { echo "Return Code: " . $_FILES["file"]["error"] . "<br />"; } else { if (file_exists("upload/" . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . " already exists. "; } else { move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]); echo "Stored in: " . "upload/" . $_FILES["file"]["name"]; } } } else { echo "Invalid file"; } ?> 

编码方案

<?php header(‘Content-type: text/html; charset=gbk’);?>//放在php文档的头部
<meta http-equiv= "Content-Type" content=" text/html; charset=UTF-8"> 

编码的转换

string iconv ( string $in_charset , string $out_charset , string $str )

什么是 Cookie?
Cookies-在客户端保存信息

cookie 常用于识别用户。cookie 是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。

如何创建 cookie?
setcookie() 函数用于设置 cookie。

语法

setcookie(name, value, expire, path, domain); 

如何删除 cookie?

<?php       // set the expiration date to one hour ago setcookie("user", "", time()-3600);
 ?> 

Session-在服务器端保存用户信息

PHP session 变量用于存储有关用户会话的信息,或更改用户会话的设置。

Session 的工作机制是:为每个访问者创建一个唯一的 id (UID),并基于这个 UID 来存储变量。UID 存储在 cookie 中,亦或通过 URL 进行传导。

Session 生命周期

시작 태그으로 session_start () 함수는 위치해야합니다 전에

세션 변수가 저장
PHP $ _SESSION 변수를 사용하여

<?php session_start(); $_SESSION['views']=1; ?> <?php echo "Pageviews=". $_SESSION['views']; ?>

는 isset (변수) 변수가 설정되었는지 여부를 결정한다.
해제 () : 세션 변수를 해제하는 데 사용되는 함수
로 세션 () 함수는 완벽한 엔드 세션은

PHP 메일 () 함수
PHP 메일 () 함수는 스크립트에서 전자 메일을 전송하는 데 사용됩니다

가장 쉬운 방법은 텍스트 이메일을 보내는 것입니다

<?php
  $to = "[email protected]"; 
  $subject = "Test mail";   $message = "Hello! This is a simple email message.";    $from = "[email protected]";   $headers = "From: $from";   mail($to,$subject,$message,$headers);    echo "Mail Sent."; ?> 

mailform.php

<?php 
if (isset($_REQUEST['email'])) {    $email = $_REQUEST['email'] ;   $subject = $_REQUEST['subject'] ;   $message = $_REQUEST['message'] ;   mail( "[email protected]", "Subject: $subject", $message, "From: $email" );   echo "Thank you for using our mail form"; } else {   echo "<form method='post' action='mailform.php'>   Email: <input name='email' type='text' /><br />   Subject: <input name='subject' type='text' /><br />   Message:<br /> <textarea name='message' rows='15' cols='40'> </textarea><br />   <input type='submit' /> </form>"; } ?>

PHP의 예외 처리

이니셔티브는 예외 던져 :
던져 예외 객체를;

예외를 잡아라

 try { 
  这是放可能产生异常的语句。
 }  catch(Exception $e)
 {
     异常的处理语句;   
}
<?php
foreach($_COOKIE as $key=>$value){
    setCookie($key,"",time()-60); } echo "删除所有cookie!";

추천

출처www.cnblogs.com/daofaziran/p/11571921.html