欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP开发环境搭建一:PHP集成环境XAMPP 的安装与配置

程序员文章站 2022-04-14 19:18:00
关于php的开发工具很多,目前市面上最好用最强大的莫过于PhpStorm这款开发神器了,但是鉴于很多开发者朋友在网站上下载的PhpStorm开发工具不能用,或者使用起来很不方便,笔者把最好用的下载地址及免费激活教程共享出来。 一、安装并配置集成环境XAMPP 具体可以参考我的这篇博客:PHP开发环境 ......

 

关于php的开发工具很多,目前市面上最好用最强大的莫过于phpstorm这款开发神器了,但是鉴于很多开发者朋友在网站上下载的phpstorm开发工具不能用,或者使用起来很不方便,笔者把最好用的下载地址及免费激活教程共享出来。

一、安装并配置集成环境xampp

具体可以参考我的这篇博客:php开发环境搭建一:php集成环境xampp 的安装与配置

二、下载安装并破解phpstorm

1. 点击这里下载 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

PHP开发环境搭建一:PHP集成环境XAMPP 的安装与配置

3.2.添加本地interpreter path

PHP开发环境搭建一:PHP集成环境XAMPP 的安装与配置

3.3.选择php解释器(php.exe)的安装目录

这个安装目录在xampp的安装目录下的\php\php.exe这里。

PHP开发环境搭建一:PHP集成环境XAMPP 的安装与配置

点击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.点击右上角的浏览器

PHP开发环境搭建一:PHP集成环境XAMPP 的安装与配置

有问题的联系笔者电话微信18629374628,欢迎交流