我试图建立一个PHP网站,我想测试我的PHP文件,而不是上传到我的主机。基本上是在上传之前先在我自己的机器上测试。我怎么做呢?


当前回答

如果你在MAC MAMP上

其他回答

安装XAMPP。如果你用的是MS Windows, WAMP也是一种选择。

使用Apache Friends XAMPP。它将设置Apache HTTP服务器,PHP 5和MySQL 5(据我所知,可能还有更多)。你不需要知道如何配置apache(或任何模块)来使用它。

你会有一个Apache提供的htdocs目录(可以通过http://localhost/访问),应该可以把你的PHP文件放在那里。在我的安装中,它位于C:\xampp\htdocs。

您还可以使用代码在PHP中创建自己的服务器!

<?php
set_time_limit(0);

$address = '127.0.0.1';
$port =4444;
$server = '$address + $port';

// <-- Starts Server
$sock = socket_create(AF_INET, SOCK_STREAM, 0);
socket_bind($sock, $address, $port) or die('Could not bind to address');
echo "\n Server is running on port $port waiting for connection... \n\n";

while(1)
{
    socket_listen($sock);
    $client = socket_accept($sock);

    $input = socket_read($client, 443);

    $incoming = array();
    $incoming = explode("\r\n", $input);

    $fetchArray = array();
    $fetchArray = explode(" ", $incoming[0]);

    $file = $fetchArray[1];
    if($file == "/"){ 

   

$file = "src/browser.php";//当服务器启动时,这个文件是打开的!

    } else {

        $filearray = array();
        $filearray = explode("/", $file);
        $file = $filearray[1];
    }

echo $fetchArray[0] . " Request " . $file . "\n"; 

// <-- Control Header
$output = "";
$Header = "HTTP/1.1 200 OK \r\n" .
"Date: Fri, 31 Dec 1999 23:59:59 GMT \r\n" .
"Content-Type: text/html \r\n\r\n";

$Content = file_get_contents($file);
$output = $Header . $Content;

    socket_write($client,$output,strlen($output));
    socket_close($client);

}
print('server running..');

运行这段代码,然后打开浏览器到localhost:443或任何您选择的端口

如果你有一台本地机器,有正确的软件:支持PHP的web服务器,没有理由你不能像你描述的那样做。

目前我正在一台Windows XP机器上使用XAMPP,(在家里)使用Kubuntu和LAMP堆栈。

如果你想要一个适用于任何操作系统的通用本地开发堆栈,你可以从不同的PHP、MySQL和Web服务器版本中进行选择,并且不害怕使用Docker,你可以选择devilbox。

devilbox是一个现代的、高度可定制的dockerized PHP堆栈,支持完整的LAMP和MEAN,可以在所有主要平台上运行。主要目标是轻松切换和组合本地开发所需的任何版本。它支持无限数量的项目,自动为其创建vhosts和DNS记录。电子邮件全能和流行的开发工具也将为您服务。配置是不必要的,因为所有的东西都是预先设置的大规模虚拟主机。

让它运行起来非常简单:

# Get the devilbox
$ git clone https://github.com/cytopia/devilbox
$ cd devilbox

# Create docker-compose environment file
$ cp env-example .env

# Edit your configuration
$ vim .env

# Start all containers
$ docker-compose up

链接:

Github: https://github.com/cytopia/devilbox 网站:http://devilbox.org