symfony'不能被识别为内部或外部命令

aelbi1ox  于 2022-12-27  发布在  其他
关注(0)|答案(7)|浏览(158)

我使用的是关于如何安装symfony和创建symfony项目的官方symfony文档。
运行命令后:symfony new my_project我得到这个错误:

symfony' is not recognized as an internal or external command

无法运行此命令的原因可能是什么?

zour9fqk

zour9fqk1#

我刚遇到这个问题,它把我逼疯了,直到我找到了解决办法。首先让我告诉你我采取的步骤:

  • 我的计算机运行的是Windows 7
  • 访问此站点以获取说明:http://www.symfony.com/download
  • 打开命令提示符并输入c:\> php -r "readfile('http://symfony.com/installer');" > symfony
  • 一旦它准备好了,我运行这个命令:php symfony new my_project
  • 全都失败了。
  • 我不断尝试不同的东西,甚至在Windows环境中更改路径,但什么也没做
  • 解决方案:我重新启动我的机器,然后打开命令提示符右键单击它的图标,并选择***“以管理员身份运行”***,按照步骤再次,它终于工作。

在我的例子中,这就是问题所在。我相信.phar文件创建时有错误。希望这能有所帮助。

nkoocmlb

nkoocmlb2#

这是令人困惑的是如何简单的指示给.这里是一个简单的how-to(假设你有php命令在你的windows上,Linux是类似的或去这里http://symfony.com/download):

    • 在Windows上安装:**
c:\> php -r "file_put_contents('symfony', file_get_contents('https://symfony.com/installer'));"

那么

php symfony new my_new_project 2.8

(my_new_project是您的项目名称,2. 8是symfony的版本)-完成!

    • 注:**

所以你知道php调用symfony参数/file来创建一个symfony项目my_new_project version 2.8,但是要注意symfony文件是之前下载的,所以你必须把symfony文件放在当前目录下,或者如果在其他地方,用path指向不同的位置。

k3bvogb1

k3bvogb13#

好吧,试试跑步:

which symfony

但是我不希望它返回任何有意义的东西,很明显,symfony没有在PATH环境变量中注册,所以,尝试以下操作:

find / -name "symfony"

...并复制找到的路径。然后

vim ~/.bash_profile

添加行(在export PATH....之前)

export SYMFONY_INSTALL=/path/from/previuous/find/commmand

最后,将SYMFONY_INSTALL添加到PATH之前:

export PATH=$SYMFONY_INSTALL:.....

保存文件,然后:source .bash_profile
请尝试再次运行:which symfony
现在应该可以了。

uqxowvwt

uqxowvwt4#

使用以下命令安装铲斗(https://scoop.sh/

> Set-ExecutionPolicy RemoteSigned -Scope CurrentUser # Optional: Needed to run a remote script the first time
> irm get.scoop.sh | iex

然后安装symfony cli

scoop install symfony-cli
z8dt9xmd

z8dt9xmd5#

转到您的php.ini文件并找到以下行
扩展名= php_curl. dll
它可能是未注解,注解它!它应该看起来像这样
;扩展名= php_curl. dll
保存你的文件并尝试再次运行“php symfony new project_name”.它为我工作

7cjasjjr

7cjasjjr6#

首先下载symfony二进制文件

php -r "file_put_contents('symfony', file_get_contents('https://symfony.com/installer'));"

然后将下载的文件复制到某个文件夹中,例如C:\Program Files (x86)\PHP\bin,以便稍后在包含所需命令的windir文件夹中的命令中引用它,执行

echo php "C:\path-to-symfony\symfony" %* > %windir%\symfony.cmd

这将工作,因为windir是在系统路径中,当你执行一个命令没有扩展,shell将自动附加默认的exebatcmd,在任何时候,你将能够在shell中执行symfony命令,这种方法也可以重用于其他情况。

wribegjk

wribegjk7#

解决办法就是:以管理员身份运行CLI
就这些

相关问题