PHP 为啥我调用imagecreatefromjpeg(),它说我没有定义imagecreatefromjpeg()呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 为啥我调用imagecreatefromjpeg(),它说我没有定义imagecreatefromjpeg()呢?相关的知识,希望对你有一定的参考价值。

<?php
function output($img)

$img = imagecreatefromjpeg($img);
imagejpeg($img);

output("D:\\122\\201.jpg");
?>
运行以上代码
Call to undefined function imagecreatefromjpeg()
这个该怎么解决
1.我的GD库肯定加载好了 phpinfo可以查到
2.Apache重启过N次了
3.运行环境是WIN XP
请速度回答我 答好了加分送 在线等
配置文件php.ini里修改了如下两个
extension=php_gd2.dll
extension_dir = "d:\phpStudy\PHP5\ext"
是所有的Image函数只要一用全都出错是未定义
到底是为什么
重复的答案希望不要再说了

参考技术A 因为你没有打开PHP的GD库

修改php.ini的内容,把php_gd.dll和,php_gd2.dll前面的#去掉,重启一下apache应该就好了
参考技术B GD库没能成功加载!
如果PHPINFO中的确能看到GD库的版本及支持信息的话,那只有一个解释--RPWT
参考技术C 一,PATH优先级,你修改的php.ini不是httpd加载的那个

二,用Zend Stdio之类的IDE调试,这个设置和httpd下的php.ini无关的,要生效得改zde目录/bin/php[4|5]

PHP:为啥用括号括起来的函数调用会阻止“通过引用”通知? [复制]

【中文标题】PHP:为啥用括号括起来的函数调用会阻止“通过引用”通知? [复制]【英文标题】:PHP: Why do surrounding function calls with parentheses prevent 'pass by reference' notices? [duplicate]PHP:为什么用括号括起来的函数调用会阻止“通过引用”通知? [复制] 【发布时间】:2015-03-26 13:19:37 【问题描述】:

我对此进行了四处搜索,但只找到了类似于“这是一个有效的技巧”但从未解释过的东西。

在以下代码中:

error_reporting(-1);
ini_set("display_errors", 1);
end(array_flip($_GET));
end((array_flip($_GET)));

第一次调用end() 会收到一条通知:

严格标准:在第 3 行的 /home/john/www/test/dp.php 中,只能通过引用传递变量

下一个,array_flip($_GET) 包含在() 中不会产生任何投诉。

我了解通知的原因、严格标准是什么、“按引用传递”是什么意思,以及 end() 接受对数组的引用作为其参数。 (必须,因为它会影响原版。)我关心的是为什么它有效。周围的() 是否创建了一个临时变量,或者这只是以某种方式欺骗 PHP 解析器?如果它确实创建了一个临时变量(并且设计如此),那么这应该是安全可以使用的,但如果它是一个hack欺骗解析器,那么它可能会在未来的 PHP 版本中中断。 (我碰巧在 PHP 版本 5.4.36-0+deb7u1)

请注意,即使它是安全的,我也不确定我是否喜欢这种结构(很容易看不到它,其他人可能不知道它为什么在那里),但它通常方便且易于阅读函数可以这样串起来。

【问题讨论】:

邓布利多在 S.O 好吧,我会的 大概是:Parentheses altering semantics of function call result @mario - 谢谢,我相信你是对的。我没见过那个。毕竟听起来它并不完全安全 无法保证这将继续与 PHP7 一起工作。尽管可以放宽 E_STRICT 通知,但并非不可行,就像 empty() on 表达式一样。 【参考方案1】:

正如elsewhere on *** 所讨论的那样,这适用于实现细节。

总结:这种行为实际上应该被认为是一个错误。不要依赖它。事实上,感谢this RFC,一旦 PHP 7 发布,这个技巧将不再有效。

【讨论】:

谢谢,我相信你是对的。我没见过那个。听起来这根本不安全 链接到 RFC 让您获得一个向上的三角形点击。

以上是关于PHP 为啥我调用imagecreatefromjpeg(),它说我没有定义imagecreatefromjpeg()呢?的主要内容,如果未能解决你的问题,请参考以下文章

PHP为啥不能调用MySQL

为啥我不能在 PHP 中调用这个受保护的函数?

在 PHP 中,为啥我的 scandir 调用会返回错误数量的文件?

PHP MySQL - 为啥存储过程调用在 PHP 代码中意外结束

为啥不能在 PHP 中从抽象类中调用抽象函数?

为啥这个 PHP 脚本(由 AJAX 调用)随机无法正确加载 SESSION?