在办公室,我们使用Homestead作为我们的本地开发环境。到目前为止我们所有的项目都是用PHP5.6制作的。现在我们有一个新项目,我们将使用PHP7。我无法在我目前的PHP5.6家用机中运行PHP7。如何实现运行PHP5.6和PHP7项目?它们不必同时运行,因此如果可以更改var path="Data Dictionary/***";
var documentLibrary = companyhome.childByNamePath("path");
var children = documentLibrary.children;
traverse(children);
function traverse(nodes){
for each(var node in nodes) {
if (node.isContainer){
logger.log(node.name + " is a folder, traversing down");
traverse(node.children);
}else {
logger.log(node.name );
logger.log(node.size);
}
}
}
以使用更新的版本,那就没问题了。
我已经尝试过的是运行Homestead.yaml
。这添加了1.0.1框,但是当我将vagrant box add laravel/homestead --box-version 1.0.1
添加到我的version: 1.0.1
并开始流浪时,PHP版本仍然是5.6。
答案 0 :(得分:14)
如果有人发现此帖 - 答案已经改变。
如果您运行Homestead v6或更高版本 - 默认情况下会自动安装多个PHP版本。
在Homestead.yaml
文件中,您可以设置版本:
sites:
- map: homestead.app
to: /home/vagrant/Code/Laravel/public
php: "5.6"
此外,您可以通过CLI使用任何受支持的PHP版本:
php5.6 artisan list
php7.0 artisan list
php7.1 artisan list
查看Laravel文档以获取更多信息:https://laravel.com/docs/5.4/homestead#multiple-php-versions
答案 1 :(得分:2)
带有Homestead的最新Laravel版本(包括PHP 5.6)是Laravel 5.6。有关详细信息和安装说明,请参见https://laravel.com/docs/5.6/homestead。
在安装过程中使用以下命令来获取此Homestead-Vagrant-Box:
vagrant box add laravel/homestead --box-version 6.4.0
git clone https://github.com/laravel/homestead.git .
git checkout v7.20.0
此Homestead版本支持PHP 5.6至7.3。
(更多详细信息,德语:https://blog.dmr-solutions.com/blog/homestead-vagrant-box-mit-php-56)
答案 2 :(得分:1)
找到解决方案!我按照this教程。我可以运行PHP 5.6和PHP 7 Homestead。我唯一要做的事情(我已经配置了PHP 5.6宅基地)是:
git clone https://github.com/laravel/homestead.git ~/Homestead-7
bash init.sh
并对所有问题回答“否”。vagrant provision
) 答案 3 :(得分:0)
我想在Laurence的答案中加点。
在将php5.6添加到Homestead.yml后,您不能简单地进行“无用的--provision”。不起作用。您必须通过运行命令“ vagrant destroy”实际破坏虚拟机,然后重新创建虚拟机。
因此,在销毁虚拟机之前,最好备份其中的每个数据库。我通过转储Code文件夹中的所有sql来做到这一点。稍后,当我运行命令“ vagrant up”后,我可以简单地将ssh切换到我的vm并转到mysql,然后在mysql命令行中再次运行“ source dump.sql”。