PHP全栈学习笔记10
php常量,常量是不能被改變的,由英文字母,下劃線,和數(shù)字組成,但是數(shù)字不能作為首字母出現(xiàn)。
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] ) 復制代碼<?php // 區(qū)分大小寫的常量名 define("44", "Welcome to 444"); echo 44; echo '<br>'; echo 55; ?> 復制代碼<?php // 不區(qū)分大小寫的常量名 define("Da", "Welcome to dashu", true); echo da; ?> 復制代碼字符串變量是用于存儲并處理文本的,包含有字符的值,創(chuàng)建,使用,存儲在變量中
<?php $txt="Hello world!"; echo $txt; ?> 復制代碼運算符(.)用于把兩個字符串值連接起來
strlen()函數(shù)返回字符串的長度
<?php echo strlen("Hello world!"); ?> 復制代碼Strpos() 函數(shù)用于在字符串內(nèi)查找一個字符或一段指定的文本。
<?php echo strpos("Hello world!","world"); ?> 復制代碼三元運算符
(expr1) ? (expr2) : (expr3) 復制代碼PHP 條件語句
if (條件) {條件成立時要執(zhí)行的代碼;}if (條件){條件成立時執(zhí)行的代碼;} else{條件不成立時執(zhí)行的代碼;}if (條件){if 條件成立時執(zhí)行的代碼;} elseif (條件){elseif 條件成立時執(zhí)行的代碼;} else{條件不成立時執(zhí)行的代碼;}<?php switch (n) { case label1:break; case label2:break; default: } ?> 復制代碼PHP 循環(huán)
while (條件為真) { }do { } while (條件為真);for (初始值; 條件; 增量) {}foreach ($array as $value) { } 復制代碼PHP 函數(shù)
<?php function functionName() {// 要執(zhí)行的代碼 } ?> 復制代碼PHP默認參數(shù)值
<?php function aa($aaa=50) {echo "The is : $aaa<br>"; }aa(); // 將使用默認值 50?> 復制代碼PHP函數(shù)返回值
<?php function add($x,$y) {$total=$x+$y; return $total; } echo "1 + 5= " . add(1,5); ?> 復制代碼PHP 數(shù)組
array();$name=array("a","b","c"); 復制代碼獲得數(shù)組的長度
<?php $name=array("a","b","c"); echo count($name); ?> 復制代碼遍歷索引數(shù)組
<?php $name=array("a","b","c"); $arrlength=count($name); for($x=0;$x<$arrlength;$x++) {echo $name[$x];echo "<br>"; } ?> 復制代碼遍歷關聯(lián)數(shù)組
<?php $age=array("a"=>"aa","b"=>"bb","c"=>"cc"); foreach($age as $x=>$x_value){echo "Key=" . $x . ", Value=" . $x_value; echo "<br>"; } ?> 復制代碼 <?php $aaa = array ("course"=>array("c","https://a/list"),"class"=>array("b","https://a.com"),"coding"=>array("a","https://aa.com") ); print("<pre>"); // 格式化輸出數(shù)組 print_r($aaa); print("</pre>"); ?> 復制代碼PHP 數(shù)組排序
PHP 全局變量
// $GLOBALS全局變量 <?php $x = 2; $y = 3; function add() { $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y']; } add(); echo $z; ?> 復制代碼$_SERVER全局變量
$_REQUEST 用于收集HTML表單提交的數(shù)據(jù)
$_POST全局變量
$_GET全局變量
PHP 表單, _POST 用于收集表單數(shù)據(jù)
PHP下拉菜單單選
<?php $q = isset($_GET['q'])? htmlspecialchars($_GET['q']) : ''; ?> 復制代碼PHP下拉菜單多選( multiple="multiple")
PHP 表單驗證
htmlspecialchars() 函數(shù)把特殊字符轉(zhuǎn)換為 HTML 實體
<script>location.href('http://www.aaa.com')</script> 復制代碼PHP 日期函數(shù)
string date ( string $format [, int $timestamp ] ) 復制代碼date()格式化日期
d--代表月中的天(01-31)、m--代表月(01--12)、Y--代表年(四位數(shù))、1--代表周里的某天
獲取時區(qū)
<?php date_default_timezone_set("Asia/Shanghai"); echo "當前時間是 " . date("h:i:sa"); ?> 復制代碼readfile()函數(shù)讀取文件,并把它寫入輸入緩沖 fopen()函數(shù)第一個參數(shù)包含被打開的文件名,第二個參數(shù)規(guī)定打開文件的模式
fread() 函數(shù)讀取打開的文件 fclose()函數(shù)用于關閉打開的文件 fgets()函數(shù)用于從文件讀取單行 fgetc()函數(shù)用于從文件中讀取單個字符 fopen()函數(shù)也用于創(chuàng)建文件 fwrite()函數(shù)用于寫入文件
創(chuàng)建一個文件上傳表單
<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> 復制代碼創(chuàng)建上傳腳本
<?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"];} ?> 復制代碼$_FILES["file"]["name"] 被上傳文件的名稱
$_FILES["file"]["type"] 被上傳文件的類型
$_FILES["file"]["size"] 被上傳文件的大小,以字節(jié)計
$_FILES["file"]["tmp_name"] 存儲在服務器的文件的臨時副本的名稱
$_FILES["file"]["error"] 由文件上傳導致的錯誤代碼
上傳限制
<?phpif ((($_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 "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"];}} else{echo "Invalid file";} ?> 復制代碼保存被上傳的文件
<?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{echo "Upload: " . $_FILES["file"]["name"] . "<br />";echo "Type: " . $_FILES["file"]["type"] . "<br />";echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";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 cookie Cookie常用于識別用戶
setcookie(name, value, expire, path, domain); 復制代碼<?php setcookie("user", "dashucoding", time()+3600); ?><html> <body></body> </html> 復制代碼$_COOKIE變量用于取回cookie的值
<?php //輸出cookie值 echo $_COOKIE["user"];//查看所有cookie print_r($_COOKIE); ?> 復制代碼使用isset()函數(shù)來確認是否設置了cookie
<html> <body><?php if (isset($_COOKIE["user"]))echo "Welcome " . $_COOKIE["user"] . "!<br />"; elseecho "Welcome!<br />"; ?></body> </html> 復制代碼刪除cookie
<?php // 設置 cookie 過期時間為過去 1 小時 setcookie("user", "", time()-3600); ?> 復制代碼瀏覽器不支持cookie 在應用程序中從一張頁面向另一張頁面?zhèn)鬟f信息
<html> <body><form action="welcome.php" method="post"> 姓名: <input type="text" name="name" /> 年齡: <input type="text" name="age" /> <input type="submit" /> </form></body> </html> 復制代碼<html> <body>Welcome <?php echo $_POST["name"]; ?>.<br /> You are <?php echo $_POST["age"]; ?> years old.</body> </html> 復制代碼PHP session變量用于存儲關于用戶會話信息,或者更改用戶會話設置
工作機制 為每個訪問者創(chuàng)建一個唯一的 id (UID),并基于這個 UID 來存儲變量。UID 存儲在 cookie 中,亦或通過 URL 進行傳導。
<?php session_start(); ?><html> <body></body> </html> 復制代碼存儲session變量
<?php session_start(); // 存儲session數(shù)據(jù) $_SESSION['add']=1; ?><html> <body><?php //檢索session數(shù)據(jù) echo "瀏覽量=". $_SESSION['add']; ?></body> </html> 復制代碼<?php session_start(); if(isset($_SESSION['views'])){ $_SESSION['views']=$_SESSION['views']+1;} else{ $_SESSION['views']=1;} echo "瀏覽量:". $_SESSION['views']; ?> 復制代碼unset()函數(shù)用于釋放指定的session變量 session_destroy()徹底銷毀session
<?php unset($_SESSION['views']); ?><?php session_destroy(); ?> 復制代碼mail()函數(shù)用于從腳本中發(fā)送電子郵件
mail(to,subject,message,headers,parameters) 復制代碼<?php $to = "dashucoding@qq.com"; // 郵件接收者 $subject = "參數(shù)郵件"; // 郵件標題 $message = "這是郵件的內(nèi)容。"; // 郵件正文 $from = "dada@qq.com"; // 郵件發(fā)送者 $headers = "From:" . $from; // 頭部信息設置 mail($to,$subject,$message,$headers); echo "郵件已發(fā)送"; ?> 復制代碼<html> <body><?php if (isset($_REQUEST['email'])) //如果接收到郵箱參數(shù)則發(fā)送郵件{//發(fā)送郵件$email = $_REQUEST['email'] ; $subject = $_REQUEST['subject'] ;$message = $_REQUEST['message'] ;mail( "someone@example.com", "Subject: $subject",$message, "From: $email" );echo "郵件發(fā)送成功";} else //如果沒有郵箱參數(shù)則顯示表單{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>";} ?></body> </html> // 有問題的代碼 復制代碼防止email注入的最好方法是對輸入進行驗證
<html> <body> <?php function spamcheck($field){// filter_var() 過濾 e-mail // 使用 FILTER_SANITIZE_EMAIL$field=filter_var($field, FILTER_SANITIZE_EMAIL);//filter_var() 過濾 e-mail// 使用 FILTER_VALIDATE_EMAILif(filter_var($field, FILTER_VALIDATE_EMAIL)){return TRUE;}else{return FALSE;}}if (isset($_REQUEST['email'])){// 如果接收到郵箱參數(shù)則發(fā)送郵件// 判斷郵箱是否合法$mailcheck = spamcheck($_REQUEST['email']);if ($mailcheck==FALSE){echo "非法輸入";}else{//發(fā)送郵件$email = $_REQUEST['email'] ; $subject = $_REQUEST['subject'] ;$message = $_REQUEST['message'] ;mail("someone@example.com", "Subject: $subject",$message, "From: $email" );echo "Thank you for using our mail form";}} else{// 如果沒有郵箱參數(shù)則顯示表單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>";} ?></body> </html> 復制代碼PHP 錯誤
<?php if(!file_exists("da.txt")){ die("文件不存在"); }else{ $file=fopen("da.txt","r"); } ?> 復制代碼結言
好了,歡迎在留言區(qū)留言,與大家分享你的經(jīng)驗和心得。
感謝你學習今天的內(nèi)容,如果你覺得這篇文章對你有幫助的話,也歡迎把它分享給更多的朋友,感謝。
感謝!承蒙關照!您真誠的贊賞是我前進的最大動力!
總結
以上是生活随笔為你收集整理的PHP全栈学习笔记10的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java实现目的选层电梯的调度
- 下一篇: 在同一基准下对前端框架进行比较(2019