1. 程式人生 > >PHP開發搭建環境,PhpStorm安裝、免費啟用配置,XAMPP安裝配置

PHP開發搭建環境,PhpStorm安裝、免費啟用配置,XAMPP安裝配置

關於php的開發工具很多,目前市面上最好用最強大的莫過於PhpStorm這款開發神器了,但是鑑於很多開發者朋友在網站上下載的PhpStorm開發工具不能用,或者使用起來很不方便,筆者把最好用的下載地址及免費啟用教程共享出來。

一、安裝並配置PHP伺服器套件XAMPP整合環境,點選連結檢視

二、下載安裝並破解PhpStorm

點選這裡下載 PhpStorm-2017.3.4.exe 的Windows版本。提取密碼: myye。

下載完成後,直接進行安裝,安裝過程很簡單。

2. 註冊免費啟用
首先,需要修改本地的hosts檔案(路徑一般為C:\Windows\System32\drivers\etc\hosts),新增下面這行程式碼。

0.0.0.0 account.jetbrains.com
儲存即可。目的是為了避免PhpStorm聯網註冊時失敗。

其次,直接用瀏覽器開啟 http://idea.lanyus.com/ ,點選頁面中的 獲得註冊碼 ,拷貝啟用碼。

最後,執行PhpStorm-2017.3,在啟用介面,切換至Activation Code選項,貼上剛剛拷貝的啟用碼,點選啟用即可。

3.配置PhpStorm

3.1.Setting中配置Interpreter

3.2.新增本地Interpreter Path

3.3.選擇PHP直譯器(php.exe)的安裝目錄

這個安裝目錄在XAMPP的安裝目錄下的\php\php.exe這裡。

點選OK配置完畢。

4.測試一下

4.1.新建一個calendar.class.php日曆類

<?php
class Calendar {
    private $year; //當前的年
    private $month; //當前的月
    private $start_weekday; //當月的第一天對應的是周幾
    private $days; //當前月一共多少天
    function __construct(){
        $this->year=isset($_GET["year"]) ? $_GET["year"] : date("Y");
        $this->month=isset($_GET["month"]) ? $_GET["month"] : date("m");

        $this->start_weekday=date("w", mktime(0, 0, 0, $this->month, 1, $this->year));
        $this->days=date("t", mktime(0, 0, 0, $this->month, 1, $this->year));
    }
    function out(){
        echo '<table align="center">';
        $this->chageDate("test.php");
        $this->weeksList();
        $this->daysList();
        echo '</table>';
    }
    private function weeksList(){
        $week=array('日','一','二','三','四','五','六');
        echo '<tr>';
        for($i=0; $i<count($week); $i++)
            echo '<th class="fontb">'.$week[$i].'</th>';
        echo '</tr>';
    }
    private function daysList(){
        echo '<tr>';
        //輸出空格(當前一月第一天前面要空出來)
        for($j=0; $j<$this->start_weekday; $j++)
            echo '<td> </td>';

        for($k=1; $k<=$this->days; $k++){
            $j++;
            if($k==date('d'))
                echo '<td class="fontb">'.$k.'</td>';
            else
                echo '<td>'.$k.'</td>';
            if($j%7==0)
                echo '</tr><tr>';

        }
        //後面幾個空格
        while($j%7!==0){
            echo '<td> </td>';
            $j++;
        }
        echo '</tr>';
    }
    private function prevYear($year, $month){
        $year=$year-1;

        if($year < 1970)
            $year = 1970;
        return "year={$year}&month={$month}";
    }

    private function prevMonth($year, $month){
        if($month == 1) {
            $year = $year -1;

            if($year < 1970)
                $year = 1970;
            $month=12;
        }else{
            $month--;
        }
        return "year={$year}&month={$month}";
    }

    private function nextYear($year, $month){
        $year = $year + 1;
        if($year > 2038)
            $year = 2038;
        return "year={$year}&month={$month}";
    }

    private function nextMonth($year, $month){
        if($month==12){
            $year++;
            if($year > 2100)
                $year=2100;
            $month=1;
        }else{
            $month++;
        }

        return "year={$year}&month={$month}";
    }
    private function chageDate($url=""){
        echo '<tr>';
        echo '<td><a href="?'.$this->prevYear($this->year, $this->month).'">'.'<<'.'</a></td>';
        echo '<td><a href="?'.$this->prevMonth($this->year, $this->month).'">'.'<'.'</a></td>';
        echo '<td colspan="3">';
        echo '<form>';
        echo '<select name="year" onchange="window.location=\''.$url.'?year=\'+this.options[selectedIndex].value+\'&month='.$this->month.'\'">';
        for($sy=1970; $sy <= 2100; $sy++){
            $selected = ($sy==$this->year) ? "selected" : "";
            echo '<option '.$selected.' value="'.$sy.'">'.$sy.'</option>';
        }
        echo '</select>';
        echo '<select name="month"  onchange="window.location=\''.$url.'?year='.$this->year.'&month=\'+this.options[selectedIndex].value">';
        for($sm=1; $sm<=12; $sm++){
            $selected1 = ($sm==$this->month) ? "selected" : "";
            echo '<option '.$selected1.' value="'.$sm.'">'.$sm.'</option>';
        }
        echo '</select>';
        echo '</form>';
        echo '</td>';

        echo '<td><a href="?'.$this->nextYear($this->year, $this->month).'">'.'>>'.'</a></td>';
        echo '<td><a href="?'.$this->nextMonth($this->year, $this->month).'">'.'>'.'</a></td>';
        echo '</tr>';
    }
}
?>

4.2.新建一個test.php測試類

<style>
    table {
        border:1px solid #050;
    }
    .fontb {
        color:white;
        background:blue;
    }

    th {
        width:30px;
    }
    td,th {
        height:30px;
        text-align:center;

    }
    form {
        margin:0px;
        padding:0px;
    }
</style>
<?php
include "calendar.class.php";
$calendar=new Calendar;
$calendar->out();
?>

4.3.點選右上角的瀏覽器

有問題的聯絡筆者電話微信18629374628,歡迎交流