📄 migration52.error-messages.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head> <title>New Error Messages</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> </head> <body><div style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="migration52.incompatible.html">Backward Incompatible Changes</a></div> <div class="next" style="text-align: right; float: right;"><a href="migration52.datetime.html">Changes in PHP datetime support</a></div> <div class="up"><a href="migration52.html">Migrating from PHP 5.1.x to PHP 5.2.x</a></div> <div class="home"><a href="index.html">PHP Manual</a></div></div><hr /><div id="migration52.error-messages" class="section"> <h2 class="title">New Error Messages</h2> <p class="para"> Below are the new error messages that have not been discussed elsewhere in this document. </p> <p class="para"> <div class="example"> <p><b>Example #1 In PHP Core</b></p> <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB"><?php<br /></span><span style="color: #007700">echo </span><span style="color: #DD0000">" "</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">session_regenerate_id</span><span style="color: #007700">();<br /></span><span style="color: #FF8000">/* Warning: session_regenerate_id(): Cannot regenerate<br /> session id - headers already sent in filename on line n */<br /><br /></span><span style="color: #0000BB">str_word_count</span><span style="color: #007700">(</span><span style="color: #DD0000">"string"</span><span style="color: #007700">, </span><span style="color: #0000BB">4</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Warning: str_word_count(): Invalid format value 4<br /> in filename on line n */<br /><br /></span><span style="color: #0000BB">strripos</span><span style="color: #007700">(</span><span style="color: #DD0000">"foo"</span><span style="color: #007700">, </span><span style="color: #DD0000">"f"</span><span style="color: #007700">, </span><span style="color: #0000BB">4</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Notice: strripos(): Offset is greater than the<br /> length of haystack string in filename on line n */<br /><br /></span><span style="color: #0000BB">strrpos</span><span style="color: #007700">(</span><span style="color: #DD0000">"foo"</span><span style="color: #007700">, </span><span style="color: #DD0000">"f"</span><span style="color: #007700">, </span><span style="color: #0000BB">4</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Notice: strrpos(): Offset is greater than the<br /> length of haystack string in filename on line n */<br /><br />/* As of PHP 5.2.1, when allow_url_include is OFF (default) */<br /></span><span style="color: #007700">include </span><span style="color: #DD0000">"php://input"</span><span style="color: #007700">;<br /></span><span style="color: #FF8000">/* Warning: include(): URL file-access is disabled<br /> in the server configuration in filename on line n */<br /></span><span style="color: #0000BB">?></span></span></code></div> </div> </div> </p> <p class="para"> <div class="example"> <p><b>Example #2 <a href="language.oop5.html" class="link">Object Oriented Code</a> in PHP Core</b></p> <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB"><?php<br /></span><span style="color: #007700">interface </span><span style="color: #0000BB">foo </span><span style="color: #007700">{<br />}<br />class </span><span style="color: #0000BB">bar </span><span style="color: #007700">implements </span><span style="color: #0000BB">foo</span><span style="color: #007700">, </span><span style="color: #0000BB">foo </span><span style="color: #007700">{<br />}<br /></span><span style="color: #FF8000">/* Fatal error: Class bar cannot implement previously<br /> implemented interface foo in filename on line n */<br /><br /><br /></span><span style="color: #007700">class </span><span style="color: #0000BB">foo </span><span style="color: #007700">{<br /> public </span><span style="color: #0000BB">$bar</span><span style="color: #007700">;<br /> function </span><span style="color: #0000BB">__get</span><span style="color: #007700">(</span><span style="color: #0000BB">$var</span><span style="color: #007700">)<br /> {<br /> return </span><span style="color: #0000BB">$this</span><span style="color: #007700">-></span><span style="color: #0000BB">bar</span><span style="color: #007700">;<br /> }<br />}<br /><br /></span><span style="color: #0000BB">$foo </span><span style="color: #007700">= new </span><span style="color: #0000BB">foo</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$bar </span><span style="color: #007700">=& </span><span style="color: #0000BB">$foo</span><span style="color: #007700">-></span><span style="color: #0000BB">prop</span><span style="color: #007700">;<br /></span><span style="color: #FF8000">/* Notice: Indirect modification of overloaded property<br /> foo::$prop has no effect in filename on line n */<br /><br /><br /></span><span style="color: #007700">class </span><span style="color: #0000BB">foo </span><span style="color: #007700">implements </span><span style="color: #0000BB">iterator </span><span style="color: #007700">{<br /> public function </span><span style="color: #0000BB">current</span><span style="color: #007700">() {<br /> }<br /> public function </span><span style="color: #0000BB">next</span><span style="color: #007700">() {<br /> }<br /> public function </span><span style="color: #0000BB">key</span><span style="color: #007700">() {<br /> }<br /> public function </span><span style="color: #0000BB">valid</span><span style="color: #007700">() {<br /> }<br /> public function </span><span style="color: #0000BB">rewind</span><span style="color: #007700">() {<br /> }<br />}<br /><br /></span><span style="color: #0000BB">$foo </span><span style="color: #007700">= new </span><span style="color: #0000BB">foo</span><span style="color: #007700">();<br />foreach(</span><span style="color: #0000BB">$foo </span><span style="color: #007700">as &</span><span style="color: #0000BB">$ref</span><span style="color: #007700">) {}<br /></span><span style="color: #FF8000">/* Fatal error: An iterator cannot be used with foreach<br /> by reference in filename on line n */<br /><br /><br /></span><span style="color: #007700">class </span><span style="color: #0000BB">foo </span><span style="color: #007700">{<br /> private function </span><span style="color: #0000BB">__construct</span><span style="color: #007700">() {<br /> }<br />}<br />class </span><span style="color: #0000BB">bar </span><span style="color: #007700">extends </span><span style="color: #0000BB">foo </span><span style="color: #007700">{<br /> public function </span><span style="color: #0000BB">__construct</span><span style="color: #007700">() {<br /> </span><span style="color: #0000BB">parent</span><span style="color: #007700">::</span><span style="color: #0000BB">__construct</span><span style="color: #007700">();<br /> </span><span style="color: #FF8000">/* Fatal error: Cannot call private<br /> foo::__construct() in filename on line n */<br /> </span><span style="color: #007700">}<br />}<br />new </span><span style="color: #0000BB">bar</span><span style="color: #007700">;<br /><br /><br /></span><span style="color: #0000BB">stream_filter_register</span><span style="color: #007700">(</span><span style="color: #DD0000">""</span><span style="color: #007700">, </span><span style="color: #DD0000">"class"</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Warning: stream_filter_register(): Filter name<br /> cannot be empty in filename on line n */<br /><br /><br /></span><span style="color: #0000BB">stream_filter_register</span><span style="color: #007700">(</span><span style="color: #DD0000">"filter"</span><span style="color: #007700">, </span><span style="color: #DD0000">""</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Warning: stream_filter_register(): Class name<br /> cannot be empty in filename on line n */<br /></span><span style="color: #0000BB">?></span></span></code></div> </div> </div> </p> <p class="para"> <div class="example"> <p><b>Example #3 In the <a href="ref.bzip2.html" class="link">bzip2</a> Extension</b></p> <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB"><?php<br />bzopen</span><span style="color: #007700">(</span><span style="color: #DD0000">""</span><span style="color: #007700">, </span><span style="color: #DD0000">"w"</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Warning: bzopen(): filename cannot be empty<br /> in filename on line n */<br /><br /></span><span style="color: #0000BB">bzopen</span><span style="color: #007700">(</span><span style="color: #DD0000">"foo"</span><span style="color: #007700">, </span><span style="color: #DD0000">"a"</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Warning: bzopen(): 'a' is not a valid mode for<br /> bzopen(). Only 'w' and 'r' are supported in<br /> filename on line n */<br /><br /></span><span style="color: #0000BB">$fp </span><span style="color: #007700">= </span><span style="color: #0000BB">fopen</span><span style="color: #007700">(</span><span style="color: #DD0000">"foo"</span><span style="color: #007700">, </span><span style="color: #DD0000">"w"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">bzopen</span><span style="color: #007700">(</span><span style="color: #0000BB">$fp</span><span style="color: #007700">, </span><span style="color: #DD0000">"r"</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Warning: bzopen(): cannot read from a stream<br /> opened in write only mode in filename on line n */<br /></span><span style="color: #0000BB">?></span></span></code></div> </div> </div> </p> <p class="para"> <div class="example"> <p><b>Example #4 In the <a href="ref.datetime.html" class="link">datetime</a> Extension</b></p> <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB"><?php<br />strtotime</span><span style="color: #007700">(</span><span style="color: #DD0000">"today"</span><span style="color: #007700">, </span><span style="color: #DD0000">"now"</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Warning: strtotime() expects parameter 2 to be<br /> long, string given in filename on line n */<br /><br />/* As of PHP 5.2.1 */<br /></span><span style="color: #007700">new </span><span style="color: #0000BB">DateTime</span><span style="color: #007700">(new </span><span style="color: #0000BB">stdclass</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Fatal error: Uncaught exception 'Exception' with<br /> message 'DateTime::__construct() expects parameter<br /> 1 to be string, object given' in filename:n */<br /></span><span style="color: #0000BB">?></span></span></code></div> </div> </div> </p> <p class="para"> <div class="example"> <p><b>Example #5 In the <a href="ref.dbase.html" class="link">dBase</a> Extension</b></p> <div class="example-contents"><div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB"><?php<br />dbase_open</span><span style="color: #007700">(</span><span style="color: #DD0000">"foo"</span><span style="color: #007700">, -</span><span style="color: #0000BB">1</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Warning: Invalid access mode -1 in filename on line n */<br /><br />/* As of PHP 5.2.1 */<br /></span><span style="color: #0000BB">dbase_open</span><span style="color: #007700">(</span><span style="color: #DD0000">"foo"</span><span style="color: #007700">, </span><span style="color: #0000BB">null</span><span style="color: #007700">);<br /></span><span style="color: #FF8000">/* Warning: The filename cannot be empty in filename on line n */<br /></span><span style="color: #0000BB">?></span></span>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -