如何解决错误“PHP通知:使用未定义的常量”?

问题描述:

可能重复:
Notice: Use of undefined constant Quantity - assumed 'Quantity'如何解决错误“PHP通知:使用未定义的常量”?

我必须使用涂鸦墙功能后,一个奇怪的错误信息。它成功地张贴到墙上,但我有一个非常奇怪的错误。

[30-JAN-2012 23点36分49秒] PHP注意:使用未定义的常量消息 - 假定在C '消息':行\ WWW \捷\ starpick \ rewards.php 33

[30-JAN-2012 23时36分49秒] PHP注意:使用的未定义的常量图像 - 假定在C '画面':\ WWW \捷\ starpick \ rewards.php在线路34上

[30 -Jan-2012 23:36:49] PHP注意:使用未定义的常量链接 - 假定在第35行的C:\ www \ jetstar \ starpick \ rewards.php中有'链接'

[30-JAN-2012 23时36分49秒] PHP说明:未定义的常量名的使用 - 假定 '名称' 在C:\ WWW \捷\ starpick \ rewards.php在线路36上

[30 -Jan-2012 23点36分49秒] PHP说明:未定义恒定字幕 使用 - 假定 '标题' 在C:\ WWW \捷\ starpick \ rewards.php上线37

这是代码我使用

$facebook->api("/me/feed", "post", array(
    message => "I have won a ".$prizename, 
    picture => "http://i1172.photobucket.com/albums/r574/092810c/starpicklogo-1.png", 
    link => "https://apps.facebook.com/starpick/", 
    name => "StarPick", 
    caption => "Stand to Win Attractive Prizes!!!")); 
+0

答案是矮:通过理解错误消息。如果仔细阅读,其中实际上包含解决方案。 – hakre 2012-01-30 15:47:25

+0

我认为你应该使用$ message,$ picture等或者你定义的变量。 – 2015-07-31 06:05:23

您忘记了您的钥匙名称周围的引号:

'message' => "I have won a ".$prizename, 
^-------^--- missing 

和你的数组的其他部分相同。

PHP中的键必须被引用,否则它们被假定为常量。 PHP会礼貌地将未定义的常量视为未加引号的字符串,但会给你提供这些警告。

+0

哦,非常感谢,我想我忽略它 – user1175105 2012-01-30 15:47:59

数组键也应放在引号中。

好的代码:

$facebook->api("/me/feed", "post", array(
"message" => "I have won a ".$prizename, 
"picture" => "http://i1172.photobucket.com/albums/r574/092810c/starpicklogo-1.png", 
"link" => "https://apps.facebook.com/starpick/", 
"name" => "StarPick", 
"caption" => "Stand to Win Attractive Prizes!!!"));