【问题标题】:problem with extension impossible enable or install扩展无法启用或安装的问题
【发布时间】:2019-10-21 07:47:02
【问题描述】:

php 7.3.5 你好,我的扩展 ext-http 有问题,即使我在 composer .json 中写这个,composer 说我缺少 ext-http,为什么? 这个确切的消息: _问题1 - 您的系统中缺少请求的 PHP 扩展 ext-http *。安装或启用 PHP 的 http 扩展。我试图查看 php.ini ,但我没有看到任何相关的内容

删除整个供应商目录后,它的工作可能是 php 版本的原因......

{
  "type": "project",
  "license": "proprietary",
  "require": {
    "php": "^7.1.3",
    "ext-ctype": "*",
    "ext-iconv": "*",
    "psr/log": "^1.1",
    "ext-intl" : "*",
    "ext-http": "*",
    "sensio/framework-extra-bundle": "^5.2",
    "sensiolabs/security-checker": "^5.0",
    "swiftmailer/swiftmailer": "^6.0",
    "symfony/asset": "4.2.*",
    "symfony/console": "4.2.*",
    "symfony/debug": "4.2.*",
    "symfony/debug-pack": "^1.0",
    "symfony/dependency-injection": "4.2.*",
    "symfony/dotenv": "4.2.*",
    "symfony/expression-language": "4.2.*",
    "symfony/flex": "^1.1",
    "symfony/form": "4.2.*",
    "symfony/framework-bundle": "4.2.*",
    "symfony/monolog-bundle": "^3.1",
    "symfony/orm-pack": "*",
    "symfony/process": "4.2.*",
    "symfony/security-bundle": "4.2.*",
    "symfony/serializer-pack": "*",
    "symfony/swiftmailer-bundle": "^3.1",
    "symfony/translation": "4.2.*",
    "symfony/twig-bundle": "4.2.*",
    "symfony/validator": "4.2.*",
    "symfony/web-link": "4.2.*",
    "symfony/webpack-encore-bundle": "^1.2",
    "symfony/yaml": "4.2.*"
  },
  "require-dev": {
    "doctrine/doctrine-fixtures-bundle": "^3.1",
    "symfony/maker-bundle": "^1.0",
    "symfony/profiler-pack": "*",
    "symfony/test-pack": "*",
    "symfony/web-server-bundle": "4.2.*"
  },
  "config": {
    "preferred-install": {
      "*": "dist"
    },
    "sort-packages": true
  },
  "autoload": {
    "psr-4": {
      "App\\": "src/"
    }
  },
  "autoload-dev": {
    "psr-4": {
      "App\\Tests\\": "tests/"
    }
  },
  "replace": {
    "paragonie/random_compat": "2.*",
    "symfony/polyfill-ctype": "*",
    "symfony/polyfill-iconv": "*",
    "symfony/polyfill-php71": "*",
    "symfony/polyfill-php70": "*",
    "symfony/polyfill-php56": "*"
  },
  "scripts": {
    "auto-scripts": {
      "cache:clear": "symfony-cmd",
      "assets:install %PUBLIC_DIR%": "symfony-cmd",
      "security-checker security:check": "script"
    },
    "post-install-cmd": [
      "@auto-scripts"
    ],
    "post-update-cmd": [
      "@auto-scripts"
    ]
  },
  "conflict": {
    "symfony/symfony": "*"
  },
  "extra": {
    "symfony": {
      "allow-contrib": false,
      "require": "4.2.*"
    }
  }
}

【问题讨论】:

标签: php http module


【解决方案1】:

在 bash linux 上输入 :php -v result

请注意/etc/php/<version>/mods-available 在文件ctype.ini 或其他无法识别的扩展名中:放入extension=name.so

like :

【讨论】:

  • linux用户回答没关系,但需要更多解释。做php -v的目的是什么? (我想找到你的 PHP 版本)同样在 Linux 上,前缀为 ext-***** 的扩展有时是要安装在你的系统上的元包或模块。因此,将未安装在您的系统上的扩展名放在任何地方都不会做任何事情。见这里stackoverflow.com/a/54679391/4726998
【解决方案2】:

只需在 php.ini 文件中启用此功能,如果行首有 ;,则删除该文件。那应该是这样的:

您可以通过以下方式在 XAMPP 上找到它:

【讨论】:

    【解决方案3】:

    看看这个解决方案:https://stackoverflow.com/a/54686959/11505413

    在你的 composer.json 中删除这一行:

    "require": {
    "ext-http": "*"
    }
    

    做一个:

    composer install
    

    然后:

    composer update
    

    【讨论】:

    • 谢谢!如果这对您有帮助,您可以对此答案进行投票并将其标记为正确答案,即使它不会显示。
    • 对不起,我不能投票,我的声望少了 15 我已经要求管理员解决这个问题,你能帮我吗?请?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-04
    • 2011-09-06
    • 2017-01-17
    • 1970-01-01
    • 2023-02-24
    • 1970-01-01
    • 2015-05-26
    相关资源
    最近更新 更多