2012-03-28 37 views

Trả lời

7

Tôi có thiếu cái gì ở đây?

if ($string === null) { 
    $string = 'null'; 
} 

đã suy nghĩ một cái gì đó ngắn hơn ...

Bạn có thể làm điều đó trong một dòng, và omit các braces:

if ($string === null) $string = 'null'; 

Bạn cũng có thể sử dụng the conditional operator :

$string = ($string === null) ? 'null' : $string; 

Cuộc gọi của bạn.

+0

no u không. tôi chỉ nghĩ rằng có thể có một cách mà không cần sử dụng nếu điều kiện ... đoán không :-) – laukok

+0

vấn đề với việc sử dụng 'if' là gì? –

+0

không có vấn đề gì với nó. đã suy nghĩ điều gì đó ngắn hơn ... như '(chuỗi) null' ... – laukok

0
if ($string == null) 
{ 
    $string = "null"; 
} 
9

var_export có thể biểu thị bất kỳ biến nào trong chuỗi có thể phân tích cú pháp.

-1

nó có giải pháp tốt nhất:

$var = null; 
$stringNull = json_encode($var); 
$null = json_decode($stringNull, true); 
var_dump($stringNull); 
var_dump($null); 
+0

tuyệt vời! cảm ơn bạn :-) – laukok

+1

Dường như chậm nhất và quá phức tạp –

1

Trong khi không phải rất thanh lịch hoặc đọc được, bạn cũng có thể thực hiện như sau

is_null($string) && $string = 'null'; // assignment, not a '==' comparison 

// $string is 'null' 

hoặc

$string = is_null($string) ? gettype($string) : $string; 

// $string is 'NULL' 

Lưu ý: var_export($string, true) (nêu tại các trả lời khác) trả về 'NULL'

Các vấn đề liên quan