New Error Messages
Below are the new error messages that have not been discussed elsewhere in this document.
Example #1 In PHP Core
<?php
echo " ";
session_regenerate_id();
/* Warning: session_regenerate_id(): Cannot regenerate
session id - headers already sent in filename on line n */
str_word_count("string", 4);
/* Warning: str_word_count(): Invalid format value 4
in filename on line n */
strripos("foo", "f", 4);
/* Notice: strripos(): Offset is greater than the
length of haystack string in filename on line n */
strrpos("foo", "f", 4);
/* Notice: strrpos(): Offset is greater than the
length of haystack string in filename on line n */
/* As of PHP 5.2.1, when allow_url_include is OFF (default) */
include "php://input";
/* Warning: include(): URL file-access is disabled
in the server configuration in filename on line n */
?>
Example #2 Object Oriented Code in PHP Core
<?php
interface foo {
}
class bar implements foo, foo {
}
/* Fatal error: Class bar cannot implement previously
implemented interface foo in filename on line n */
class foo {
public $bar;
function __get($var)
{
return $this->bar;
}
}
$foo = new foo;
$bar =& $foo->prop;
/* Notice: Indirect modification of overloaded property
foo::$prop has no effect in filename on line n */
class foo implements iterator {
public function current() {
}
public function next() {
}
public function key() {
}
public function valid() {
}
public function rewind() {
}
}
$foo = new foo();
foreach($foo as &$ref) {}
/* Fatal error: An iterator cannot be used with foreach
by reference in filename on line n */
class foo {
private function __construct() {
}
}
class bar extends foo {
public function __construct() {
parent::__construct();
/* Fatal error: Cannot call private
foo::__construct() in filename on line n */
}
}
new bar;
stream_filter_register("", "class");
/* Warning: stream_filter_register(): Filter name
cannot be empty in filename on line n */
stream_filter_register("filter", "");
/* Warning: stream_filter_register(): Class name
cannot be empty in filename on line n */
?>
Example #3 In the bzip2 Extension
<?php
bzopen("", "w");
/* Warning: bzopen(): filename cannot be empty
in filename on line n */
bzopen("foo", "a");
/* Warning: bzopen(): 'a' is not a valid mode for
bzopen(). Only 'w' and 'r' are supported in
filename on line n */
$fp = fopen("foo", "w");
bzopen($fp, "r");
/* Warning: bzopen(): cannot read from a stream
opened in write only mode in filename on line n */
?>
Example #4 In the datetime Extension
<?php
strtotime("today", "now");
/* Warning: strtotime() expects parameter 2 to be
long, string given in filename on line n */
/* As of PHP 5.2.1 */
new DateTime(new stdclass);
/* Fatal error: Uncaught exception 'Exception' with
message 'DateTime::__construct() expects parameter
1 to be string, object given' in filename:n */
?>
Example #5 In the dBase Extension
<?php
dbase_open("foo", -1);
/* Warning: Invalid access mode -1 in filename on line n */
/* As of PHP 5.2.1 */
dbase_open("foo", null);
/* Warning: The filename cannot be empty in filename on line n */
?>
Example #6 In the mcrypt Extension
<?php
$key = "this is a secret key";
$td = mcrypt_module_open('tripledes', '', 'ecb', '');
$iv = mcrypt_create_iv (mcrypt_enc_get_iv_size($td),
MCRYPT_RAND);
mcrypt_generic_init($td, $key, $iv);
$encrypted_data = mcrypt_generic($td, "");
/* Warning: mcrypt_generic(): An empty string was
passed in filename on line n */
?>
Example #7 In the oci8 Extension
<?php
oci_connect("user", "pass", "db", "bogus_charset");
/* Warning: Invalid character set name:
bogus_charset in filename on line n */
$oci = oci_connect("user", "pass", "db");
oci_password_change($oci, "", "old", "new");
/* Warning: username cannot be empty in filename
on line n */
oci_password_change($oci, "user", "", "new");
/* Warning: old password cannot be empty in filename
on line n */
oci_password_change($oci, "user", "old", "");
/* Warning: new password cannot be empty in filename
on line n */
?>
Example #8 In the SPL Extension
<?php
$obj = new SplFileObject(__FILE__);
$obj->fgetcsv("foo");
/* Warning: SplFileObject::fgetcsv(): delimiter must
be a character in filename on line n */
$obj->fgetcsv(",", "foo");
/* Warning: SplFileObject::fgetcsv(): enclosure must
be a character in filename on line n */
?>
Example #9 In the Semaphore (sysvmsg) extension
<?php
/* Warning: maximum size of the message has to be
greater then zero in filename on line n */
?>
Example #10 A 5.2.1+ Zip Example
<?php
$obj = new ZipArchive();
$obj->open('archive.zip');
$obj->setCommentName('', 'comment');
/* Notice: ZipArchive::setCommentName(): Empty string
as entry name in filename on line n */
/* As of PHP 5.2.1 */
$obj->getCommentName('');
/* Notice: ZipArchive::getCommentName(): Empty string
as entry name in filename on line n */
?>
Vertaling niet beschikbaar
De PHP-handleiding is nog niet in het Nederlands vertaald, dus het scherm is in het Engels. Als u wilt, kunt u het ook in het Frans of in het Duits raadplegen.
Als je de moed voelt, kun je je vertaling aanbieden ;-)
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 30/01/2003 gemaakt, de laatste keer de 26/10/2018 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/php-rf-migration52.error-messages.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.