尽管目前开发主要是基于Think<em>PHP</em>框架,Think<em>PHP</em>框架的帮助文档看得比较多,但对于<em>PHP</em>的入门和系统学习还是基于《<em>PHP</em>和MySQL Web开发》这本书。<em>PHP</em>语言特性<em>PHP</em>文
2021-06-01 03:00:28
PHP檔案。PHP作為伺服器端指令碼語言,用於在Web伺服器上被解釋和執行。PHP檔案由PHP標記定義,它告訴Web伺服器PHP程式碼的開始和結束,也用於在混合編碼的檔案中隔離PHP程式碼和HTML。XML風格是PHP推薦使用的標記風格。應用ThinkPHP框架開發時,對於一個單獨的PHP檔案可以省略掉?>標記。PHP檔案也可以由PHP執行程式直接排程運行。
<?php
// PHP程式碼;
?>
<?php
// c/c++註釋
/* c/c++註釋 */
# Shell註釋
?>
變數。PHP變數名稱都是以美元符號開始的。不要求在使用變數之前聲明變數,當第一次給一個變數賦值時就會創建這個變數。變數的類型是由賦給變數的值確定的。PHP支援如下基本資料類型: Integer, Float, String, Boolean, Array, Object, NULL和resource。PHP的類型轉換與C語言的類型轉換相同。PHP還提供了可變變數,允許動態的改變一個變數的名稱。在雙引號中變數名稱將被變數時所替代,在單引號中變數名稱或者任何其他文字都會不經修改而傳送給瀏覽器。訪問表單資料有三種方法,其中中等風格是如今所推薦的。
<?php
$formVar = $_POST['表單控制項名'];//訪問表單資料
<?php
define('CONST', value);
<?php
$a = @(57/0); //錯誤抑制操作符
$out = `ls -la`; //執行操作符
$b = $obj instanceof SomeClass; //類型操作符
<?php
declare(執行指令)
{
//程式碼
}
函數。PHP函數聲明以關鍵字function開始。在函數內部聲明的變數作用域是從聲明它們的那條語句開始到函數末尾。使用關鍵字global可以手動指定一個在函數中定義或使用的變數,具有全局作用域。
<?php
function functionName(params)
{
// code
}
<?php
class ClassName
{
//建構函式
function __construct($param)
{
}
public function __get($name)
{
}
public function __set($name, $value)
{
}
public function __call($mathod, $p)
{
}
public function __toString()
{
}
//解構函式
function __destruct()
{
}
}
檔案系統函數庫。包括直接處理與裝置互動的Direct IO庫,基於檔案內容探索檔案類型的Fileinfo庫,監聽檔案變化的Inotify庫,為檔案新增額外屬性的xattr庫,返回檔案差異的xdiff庫,以及處理一般檔案系統和目錄的函數庫 。以下是處理一般檔案系統和目錄的部分常用函數。 超級全局資料$_FILES。上傳檔案的表單標記中,必須設定屬性enctype="multipart/form-data"。可以設定一個隱藏的MAX_FILE_SIZE表單域,限制上傳檔案的最大位元組長度。上傳檔案時,檔案將儲存在伺服器臨時目錄,由超級全局陣列$_FILES儲存相應檔案資訊。//檢測檔案檔案的指定屬性
bool file_exists(string $filepath); //檔案是否存在
int filesize(string $filepath); //檢視檔案大小
//創建、賦值、移動、重新命名、刪除和鎖定檔案
bool touch(string $file[, int $time[, int $atime]); //創建檔案
void copy(string $sourcepath, string $destpath); //複製檔案
void rename(string $oldfile, string $newfile); //移動檔案
bool unlink(string $filepath); //刪除檔案
bool flock(resource $handle, int $operation(, int & $wouldblock]); //鎖定檔案
//讀寫檔案
resource fopen(string $filepath, string $mode); //開啟檔案
bool feof(resource $handle); //檢查是否指向了檔案末尾
//在檔案中定位
void rewind(resource $handle); //將檔案指針復位到檔案的開始
int ftell(resource $handle); //以位元組為單位報告檔案指針在當前檔案中的位置
int fseek(resource $handle, int $offset[, int $whence]); //將檔案指針指向檔案的某個位置
//讀取一個字元
string fgetc(resource $handle);
//每次讀取一行內容
string fgets(resource $handle, int $length); //每次讀取一行內容
string fgetss(resource $handle, int $length[, stirng $allowable_tags]); //每次讀取一行內容,過濾字元串中包含的標記
array fgetcsv(resource $handle, int $length[, string $delimiter[, string $enclosure]]); //每次讀取一行內容,基於界定符分割
//讀取整個檔案
int readfile(string $filename,[int $use_include_path[, resource $context]]); //讀取整個檔案,並將內容輸出到標準輸出
bool fpassthru(resource $fp);//讀取整個檔案,並輸出到標準輸出
array file(string $path); //讀取整個檔案,輸出到陣列
string file_get_contents(); //讀取整個檔案,返回字元串
//讀取任意長度
string fread(resource $fp, int $length);
//寫檔案
fwrite(resource $handle, string $content[, int $length]);//寫檔案
int file_put_contents(string $filename,
string $data
[, int $flags
[, resource $context]]); //寫檔案,不需要開啟檔案獲得resource
fclose(resource $fp); //關閉檔案
//目錄函數和類
resource opendir(string $path); //開啟所瀏覽的目錄
resource readdir(resource $handle) //從目錄依次讀取檔案,沒有可讀的檔案,返回false
void closedir(resource $handle); //關閉目錄
void rewinddir(resource $handle); //恢復目錄控制代碼到目錄開始
array files = scandir(string $dirpath, int $sorting_order); //返回目錄下的檔名稱,並以字母表順序排序
//預設order為0,升序,1則為降序。
string dirname(string $path); //返回路徑的目錄部分
string basename(string $path); //返回路徑的檔名稱部分
int disk_free_space(string $path); //磁碟或該目錄所在檔案系統的剩餘空間(位元組)
mkdir(string $path, int $mode); //創建目錄,
rmdir(string $path); //移除目錄
$dir = dir(string $path) //返回一個目錄物件,包含handle和path屬性
$dir->read(); //同opendir
$dir->close(); //同closedir
$dir->rewind(); //同rewind
//form
<form enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000"/>
<input type="file" name="userfile"/>
</form>
//$_FILES
$_FILES['userfile']['tmp_name']; //檔案在Web伺服器中臨時儲存的位置
$_FILES['userfile']['name']; //檔名稱
$_FILES['userfile']['size']; //檔案的位元組大小
$_FILES['userfile']['type']; //檔案的MIME類型
$_FILES['userfile']['error']; //任何與檔案上傳相關的錯誤程式碼
//0, 沒有發生任何錯誤
//1, 上傳檔案大小超出了約定值
//2, 上傳檔案大小超出了表單的MAX_FILE_SIZE元素指定的最大值
//3, 檔案被部分上傳
//4, 沒有上傳任何檔案
//6, 在php.ini中沒有指定臨時目錄
//7, 檔案寫入磁碟失敗
string date ( string $format [, int $timestamp ])//格式化一個本地日期時間
int mktime ([int $hour[, int $minute[, int $second[, int $month[, int $day[, int $year[, int $is_dst]]]]]]])
int time(); //返回當前的 Unix 時間戳
array getdate ( int $timestamp = time()); //返回一個根據timestamp得到包含有日期資訊的關聯陣列,預設輸入當前時間
bool checkdate ( int $month , int $day , int $year ); //驗證由參數構成的日期的合法
string strftime ( string $format , int $timestamp = time() ); //根據系統所在區域格式化一個時間
string getenv ( string $varname , bool $local_only = false ); //獲取環境變數
bool putenv ( string $setting ); //設定環境變數的值
string gettype(mixed $var); //獲得變數的類型
bool settype(mixed $var, string $type); //設定變數的類型
bool is_array(mixed $var); //檢查變數是否是陣列
bool is_double(mixed $var);
bool is_float(mixed $var);
bool is_integer(mixed $var);
bool is_string(mixed $var);
bool is_object(mixed $var);
bool is_resource(mixed $var);
bool is_null(mixed $var);
bool is_scalar(mixed $var); //檢查變數是否是標量
bool is_numeric(mixed $var); //檢查變數是否是數字或數字字元串
bool is_callable(mixed $var); //檢查變數是否是函數
bool isset(mixed $var); //檢查變數是否存在
bool empty(mixed $var); //檢查變數是否存在,存在的話值是否為非空且非零
void unset(mixed $var); //銷燬變數
相關文章
尽管目前开发主要是基于Think<em>PHP</em>框架,Think<em>PHP</em>框架的帮助文档看得比较多,但对于<em>PHP</em>的入门和系统学习还是基于《<em>PHP</em>和MySQL Web开发》这本书。<em>PHP</em>语言特性<em>PHP</em>文
2021-06-01 03:00:28
还有原价34元的真功夫澳洲和牛饭蒸蛋套餐,Super会员价也只需要9.9元。另外,在6月1日-6月18日期间,Super会员还会享有一些特定商品的专项补贴。比如购买Apple <em>iPad</em> Air 10.9英寸+二代手写笔的Super会员,就能享受
2021-06-01 03:00:22
公众号回复:干货,领取价值58元/套IT管理体系文档 公众号回复:ITIL教材,领取最新ITIL4中文教材 正文 38张史上最全的IT技能图谱(高清版),主要包含如下几个方面:架构师图谱<em>Java</em>架构师图谱微服务架构秘籍一致性图谱互联
2021-06-01 02:30:42
不过京东的做法很鸡贼,为什么这么说呢?因为起初<em>iPhone</em>12手机仅仅比天猫便宜一块钱,但是这仅仅的一块钱就会让很多用户选择京东放弃天猫,更何况,京东还有一大优势,那就是它们自己的快递平台,双剑合璧,想不赢都难,当然
2021-06-01 02:30:32
近日,在某社交媒体上苹果<em>iPhone</em> 13玫瑰粉新配色上手照被曝光出来,爆料者称该配色将会被命名为“Rose Pink,玫瑰粉”,将会在今年年底登场,想必会受到不少女性用户的追捧。此外,苹果在<em>iPhone</em> 13系列上采用
2021-06-01 02:30:29
新买的<em>iPhone</em> 12不带充电头已是让我很不爽,早期遗留下来的五福一安原装充电头,充电速度也是慢得一批,<em>iPhone</em> 12好歹也是支持10W无线充和20W快充的手机啊,怎么能最大地发挥手机的充电速度呢?被生活压迫得
2021-06-01 02:30:14