Gar*_*bit 2 php database api json codeigniter
我正在调用API并处理JSON响应,然后将其解码为stdObject.然后我用值或NULL将记录插入到db中.但是我发现我的请求并不总是带有值
例:
[1] => stdClass Object
(
[created_at] => Wed, 26 Oct 2011 09:58:47 +0000
[entities] => stdClass Object
(
)
[from_user] => powpowpow
[from_user_id] => 12345
[from_user_id_str] => 12345
[geo] =>
[location] => UK
[id] => 1245
[id_str] => 12345
[iso_language_code] => en
[metadata] => stdClass Object
(
[result_type] => recent
)
[profile_image_url] => http://a3.twimg.com/profile_images//.jpg
[source] => <a href="http://twitter.com/">web</a>
[text] => some message!
[to_user_id] =>
[to_user_id_str] =>
)
Run Code Online (Sandbox Code Playgroud)
我发现每个调用,位置,to_user_id和screen_name都没有返回一些属性(在这个调用中甚至没有返回)
我所做的是创造一种方法;
function _nullify($var){
if(isset($var)){
return $var = empty($var) ? NULL : $var;
} else {
return NULL;
}
}
Run Code Online (Sandbox Code Playgroud)
这应该允许我检查属性是否存在,如果有值,则返回它,否则返回NULL,这样我就可以输入到db
但是这种方法似乎不起作用.
我希望你们能提供帮助,
非常感谢,
安迪
正如我所看到的,您正在尝试检查对象中是否存在密钥,您可以使用PHP的property_exists函数.
function _nullify($object, $key){
if(property_exists($object, $key))
return empty($object->$key) ? NULL : $object->$key;
else
return NULL;
}
Run Code Online (Sandbox Code Playgroud)
夏嘉曦.
| 归档时间: |
|
| 查看次数: |
6771 次 |
| 最近记录: |