2013-09-08 11 views
11

Ich möchte ein PHP-Objekt in eine Textdatei schreiben. Das PHP-Objekt ist soSchreiben und lesen PHP-Objekt in einer Textdatei?

$obj = new stdClass(); 
$obj->name = "My Name"; 
$obj->birthdate = "YYYY-MM-DD"; 
$obj->position = "My position"; 

Ich möchte dieses $ obj in eine Textdatei schreiben. Die Textdatei wird in diesem Pfad befindet

$filePath = getcwd().DIRECTORY_SEPARATOR."note".DIRECTORY_SEPARATOR."notice.txt" 

ich eine einfache Art und Weise wollen Sie dieses Objekt in der Textdatei zu schreiben und die Datei zu erhalten, die Eigenschaften lesen wollen, wie ich festgelegt. Bitte hilf mir.

Vielen Dank im Voraus.

Antwort

15

Sie können Verwenden Sie den folgenden Code für das Schreiben von PHP-Objekten in der Textdatei ...

$obj = new stdClass(); 
$obj->name = "My Name"; 
$obj->birthdate = "YYYY-MM-DD"; 
$obj->position = "My position"; 

$objData = serialize($obj); 
$filePath = getcwd().DIRECTORY_SEPARATOR."note".DIRECTORY_SEPARATOR."notice.txt"; 
if (is_writable($filePath)) { 
    $fp = fopen($filePath, "w"); 
    fwrite($fp, $objData); 
    fclose($fp); 
} 

Um die Textdatei zu lesen, um die Eigenschaften wie Sie definiert zu bekommen ...

+0

Perfekt! Ich mag das. Danke vielmals. – Nantu

3

können Sie serialize() verwenden, bevor es in die Datei zu speichern und dann unserialize() die ganze $obj Verfügung, um Sie zu erhalten:

$obj = new stdClass(); 
$obj->name = "My Name"; 
$obj->birthdate = "YYYY-MM-DD"; 
$obj->position = "My position"; 
$objtext = serialize($obj); 
//write to file 

Dann können Sie später unserialize():

$obj = unserialize(file_get_contents($file)); 
echo $obj->birthdate;//YYYY-MM-DD 
+0

Es funktioniert. Danke vielmals. – Nantu