相关疑难解决方法(0)

如何覆盖PHP的路径以使用MAMP路径?

完全搞砸我在PHP上的PHP配置试图让SOAP模块工作(-bash:/ usr/bin/php:没有这样的文件或目录....)我现在必须使用MAMP但每次我必须键入路径

Applications/MAMP/bin/php5.3/bin/php to do command line.
Run Code Online (Sandbox Code Playgroud)

如何只输入php而不是MAC上的整个路径?我仔细检查过,我没有名为.profilenor 的文件bash_profile

谢谢

PS:这是什么输出echo $ PATH:

echo $PATH
/Applications/MAMP/Library/bin/:/Applications/MAMP/bin/php5/bin/:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin
Run Code Online (Sandbox Code Playgroud)

php macos shell mamp path

52
推荐指数
5
解决办法
11万
查看次数

致命错误:找不到类'NumberFormatter'

我已经使用这个完全相同的代码多年了,我从来没有遇到过一个问题.现在突然间它停止了工作.

我已经通过互联网阅读了这个问题,显然你需要PHP 5.3 or higher安装,并PHP intl安装了插件.我有这两个,但Fatal error: Class 'NumberFormatter' not found每当我使用以下函数时,我仍然收到错误:

function format_item($value)
{
       $format = new \NumberFormatter('en_US', \NumberFormatter::CURRENCY);
       return $format->formatCurrency($value, 'AUD');
}
Run Code Online (Sandbox Code Playgroud)

另外,这是我的php.ini文件中的snippit,显示我已经PHP intl安装了插件:

[intl]
intl.default_locale = fr_FR
; This directive allows you to produce PHP errors when some error
; happens within intl functions. The value is the level of the error produced.
; Default is 0, which does not produce any errors.
intl.error_level = E_WARNING
Run Code Online (Sandbox Code Playgroud)

我也有extension=php_intl.dll …

php

33
推荐指数
10
解决办法
4万
查看次数

Zend InputFilter需要intl PHP扩展吗?

我正在为我的表单设置一些过滤器和验证器,但是当我提交它时,会出现此错误:"Zend\I18n\Filter组件需要intl PHP扩展".这是因为Alnum和Alpha验证器吗?

码:

     public function getInputFilter() {
        if (!$this->inputFilter) {
            $inputFilter = new InputFilter();

            $inputFilter->add(array(
                'name' => 'email',
                'required' => true,
                "filters" => array(
                    array('name' => 'StringTrim'),
                    array('name' => 'StripTags')),
                'validators' => array(
                    array(
                        'name' => 'Regex',
                        'options' => array(
                            'pattern' => '/^[a-zA-Z0-9.!#$%&\'*+\/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/',
                            'messages' => array(
                                Regex::NOT_MATCH => '?-???? ?????? ? ?????????.',
                            ),
                        ),
                        'break_chain_on_failure' => true
                    ),
                    array(
                        'name' => 'EmailAddress',
                        'options' => array(
                            'messages' => array(
                                EmailAddress::INVALID_FORMAT => "?-???? ?????? ? ?????????.",
                                EmailAddress::INVALID => "",
                                EmailAddress::INVALID_LOCAL_PART => "", …
Run Code Online (Sandbox Code Playgroud)

php zend-framework zend-framework2

8
推荐指数
1
解决办法
7595
查看次数

在MacOS上安装PHP intl扩展

我在Cakephp的安装中遇到了一些问题.我希望任何人都面临同样的问题.

错误

- cakephp/cakephp 3.3.9 requires ext-intl * -> the requested PHP extension intl is missing from your system.
Run Code Online (Sandbox Code Playgroud)

根据错误消息,我删除了; 从php.ini文件但仍然得到相同的错误.

我有Mac 10.12 Sierra,Xampp 5.6.28-1版本和PHP 5.6.24版本.

php xampp macos php-extension

6
推荐指数
3
解决办法
2万
查看次数

在 Mac 上的 XAMPP 上安装 PHP 7.0 国际化扩展 (Intl)

我按照此处概述的说明进行操作:

在 Mac 上的 XAMPP 上安装 PHP 国际化扩展 (Intl)

Ran sudo pecl install intl 从 Cellar 中选择了正确的文件

然后发生了这个错误:

/private/tmp/pear/temp/intl/intl_error.h:24:10:致命错误:找不到“ext/standard/php_smart_str.h”文件

包括

     ^ 1 error generated. make: *** [php_intl.lo] Error 1 ERROR: `make' failed
Run Code Online (Sandbox Code Playgroud)

不管怎样,做了一些研究,发现 PHP 7.0.8 弃用了 php.smart_str.h 到 php.smart_string.h

因此,鉴于我对 C++ 的了解很少,我将 smart_string.h 复制到 smart_str.h 并将所有标头从 STRING 重命名为 string......

重新运行pecl - 不走运......更多错误......不知道.c文件在哪里并重新制作php(对走那么远并不真正感兴趣),因为无论如何我正在使用XAMPP所以结束了选项。

我的 mac 上有 php 5.5,位于 usr/local/bin 文件夹深处,所以下一步是让 pecl 使用这些文件并生成 intl.so 文件......

是吗....我有 intl.so 文件,因此将其放入 XAMPP 中的“扩展”文件夹中(以供参考:/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20151012 )

运行 php 并出现以下错误:

警告:PHP 启动:无法加载动态库 '/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20151012/intl.so' - dlopen(/Applications/XAMPP/xamppfiles/lib/ php/extensions/no-debug-non-zts-20151012/intl.so,9):找不到符号:_zval_used_for_init 引用自:/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts- 20151012/intl.so …

php macos pecl php-extension intl

5
推荐指数
1
解决办法
8868
查看次数

使用 Composer 安装 - XAMPP 上的系统缺少 ext-mcrypt * 和 ext-intl * php 扩展

我一直在尝试安装 Magento 2。我确实加载了所有内容,并且使用最后一个命令“composer update”或“composer install”时遇到了问题。

Problem 1
    - The requested PHP extension ext-mcrypt * is missing from your system.
  Problem 2
    - The requested PHP extension ext-intl * is missing from your system.
Run Code Online (Sandbox Code Playgroud)

问题是我不是专业的 Mac 用户或任何东西,所以我很难理解我需要做什么来解决这个问题。我在 stackoverflow 上看到了一个有同样问题的话题,但在那种情况下,他们使用的是 MAMP。我正在使用 XAMPP。他们告诉用 .bash_profile 文件用 MAMP 的 PHP 覆盖 PHP。我也试过 - 不太明白我在做什么。

所以拜托,有人能帮我解决 ext-mcrypt 和 ext-intl 的问题吗?我什至不知道如何知道他们是否错过了。

谢谢!

这是代替 mcrypt 的内容

[mcrypt]
; For more information about mcrypt settings see http://php.net/mcrypt-module-open

; Directory where to load mcrypt algorithms
; Default: Compiled in into …
Run Code Online (Sandbox Code Playgroud)

php macos magento composer-php

1
推荐指数
1
解决办法
2万
查看次数