完全搞砸我在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 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 …
我正在为我的表单设置一些过滤器和验证器,但是当我提交它时,会出现此错误:"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) 我在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版本.
我按照此处概述的说明进行操作:
在 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”文件
包括
Run Code Online (Sandbox Code Playgroud)^ 1 error generated. make: *** [php_intl.lo] Error 1 ERROR: `make' failed
不管怎样,做了一些研究,发现 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 …
我一直在尝试安装 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)