Description
mixed var_export ( mixed $expression [, bool $return] )
var_export() จะ get ทั้งโครงสร้าง และข้อมูลของตัวแปรที่ส่งเข้าไป ($expression) ซึ่งทำงานเหมือนกันกับvar_dump() ยกเว้นอย่างเดียวคือ ค่าที่ return กลับนั้น เป็น PHP syntax ถูกต้อง (ลองดูตัวอย่างจะเห็นชัดเจนขึ้น)
Parameters
- expression
- ตัวแปรที่จะแสดงค่า หรือโครงสร้าง หรือข้อมูล
- return
- ถ้าเซตค่าเป็น TRUE เพื่อใช้งาน ฟังก์ชั่น var_export() จะ return ข้อมูลของตัวแปร แทนที่จะแสดงออกทาง output เลยNote: This function internally uses the output buffering with this parameter so it can not be used inside ob_start() callback function.
Return Values
ถ้า parameter return ถูกเซตเป็น TRUE ฟังก์ชั่นนี้จะ return ค่าของข้อมูลของตัวแปรออกไปเป็น string นอกนั้นแล้วจะ return ค่าเป็น NULL
Example
Code
--------------------
<?php
$myArr = array(
array('id' => 1, 'name' => 'Mister 01'),
array('id' => 2, 'name' => 'Mister 02'),
array('id' => 3, 'name' => 'Mister 03')
);
echo "output from var_dump():\n";
var_dump($myArr);
echo "output from var_export():\n";
var_export($myArr);
?>
--------------------
<?php
$myArr = array(
array('id' => 1, 'name' => 'Mister 01'),
array('id' => 2, 'name' => 'Mister 02'),
array('id' => 3, 'name' => 'Mister 03')
);
echo "output from var_dump():\n";
var_dump($myArr);
echo "output from var_export():\n";
var_export($myArr);
?>
Output--------------------
output from var_dump():
array(3) {
[0]=>
array(2) {
["id"]=>
int(1)
["name"]=>
string(9) "Mister 01"
}
[1]=>
array(2) {
["id"]=>
int(2)
["name"]=>
string(9) "Mister 02"
}
[2]=>
array(2) {
["id"]=>
int(3)
["name"]=>
string(9) "Mister 03"
}
}
output from var_export():
array (
0 =>
array (
'id' => 1,
'name' => 'Mister 01',
),
1 =>
array (
'id' => 2,
'name' => 'Mister 02',
),
2 =>
array (
'id' => 3,
'name' => 'Mister 03',
),
)
output from var_dump():
array(3) {
[0]=>
array(2) {
["id"]=>
int(1)
["name"]=>
string(9) "Mister 01"
}
[1]=>
array(2) {
["id"]=>
int(2)
["name"]=>
string(9) "Mister 02"
}
[2]=>
array(2) {
["id"]=>
int(3)
["name"]=>
string(9) "Mister 03"
}
}
output from var_export():
array (
0 =>
array (
'id' => 1,
'name' => 'Mister 01',
),
1 =>
array (
'id' => 2,
'name' => 'Mister 02',
),
2 =>
array (
'id' => 3,
'name' => 'Mister 03',
),
)
จะเห็นว่า output ของ var_export จะมีรูปแบบ เป็น code PHP ที่ถูกต้อง แต่ var_dump ก็จะละเอียดมากกว่า (บอกเลยว่าแต่ละอย่างมี data type เป็นอะไร)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น