小编The*_*uck的帖子

将stdClass对象转换/转换为另一个类

我正在使用第三方存储系统,它只返回我的stdClass对象,无论我输入什么因为一些不明原因.所以我很想知道是否有办法将stdClass对象转换/转换为给定类型的完整对象.

例如,有些东西:

//$stdClass is an stdClass instance
$converted = (BusinessClass) $stdClass;
Run Code Online (Sandbox Code Playgroud)

我只是将stdClass转换为数组并将其提供给BusinessClass构造函数,但也许有一种方法可以恢复我不知道的初始类.

注意:我对"更改您的存储系统"类型的答案不感兴趣,因为它不是您感兴趣的点.请将其视为关于语言能力的学术问题.

干杯

php stdclass

86
推荐指数
6
解决办法
9万
查看次数

OS X的Bash脚本绝对路径

我试图获取OS X上当前运行脚本的绝对路径.

我看到很多回复readlink -f $0.但是,由于OS X readlink与BSD相同,它只是不起作用(它适用于GNU的版本).

有没有开箱即用的解决方案?

macos bash path

85
推荐指数
10
解决办法
6万
查看次数

在PHP中处理大型JSON文件

我正在尝试处理稍大(可能高达200M)的JSON文件.该文件的结构基本上是一个对象数组.

所以有些东西:

[
  {"property":"value", "property2":"value2"},
  {"prop":"val"},
  ...
  {"foo":"bar"}
]
Run Code Online (Sandbox Code Playgroud)

每个对象都具有任意属性,并且不必与数组中的其他对象共享它们(如同,具有相同).

我想对数组中的每个对象应用处理,因为文件可能很大,我不能在内存中啜饮整个文件内容,解码JSON并迭代PHP数组.

理想情况下,我想阅读文件,获取每个对象的足够信息并进行处理.如果有类似的库可用于JSON,那么SAX类型的方法就可以了.

关于如何最好地处理这个问题的任何建议?

php json large-files

21
推荐指数
3
解决办法
2万
查看次数

我应该如何配置Nginx代理参数传递的URL?

我正在尝试访问位于OAuth2身份验证后面的媒体文件(图像,视频)。

为了访问资源,我需要向请求中添加自定义授权承载令牌,因此我不能使用简单的重写(至少据我所知)。

它不能通过普通的HTML(say imgvideotag)来完成,所以我正在考虑让Nginx将查询代理到最终服务器。

每个媒体资源都将通过/proxy具有token参数(用于身份验证)和url要加载的实际资源的路径加载。

范例网址:

http://myserver.com/proxy/?token=12345&url=http://protectedserver.com/custompath/asset
Run Code Online (Sandbox Code Playgroud)

这是我想到的,但是我不确定如何配置proxy_pass指令,因为我需要它$url专门代理变量。我不需要代理路径(无论如何它都是空的)。

location /proxy/ {
  if ($arg_token ~ "^$") { return 404; }
  if ($arg_url ~ "^$") { return 404; }
  set $url $arg_url;
  proxy_set_header Authorization "Bearer $arg_token";
  set $args "";
  #proxy_pass $url;
}
Run Code Online (Sandbox Code Playgroud)

注意:这将在封闭的环境中运行,并且只有特定的计算机(交互作用受限的信息亭)才能访问该页面,因此我不必担心auth令牌的潜在泄漏。

我在ServerFault上注意到了类似的问题,但没有人对此有答案:https : //serverfault.com/questions/671991/nginx-proxy-pass-url-from-get-argument

我正在寻找使它工作的配置设置或可行的替代解决方案。

proxy nginx oauth-2.0

0
推荐指数
1
解决办法
4070
查看次数

标签 统计

php ×2

bash ×1

json ×1

large-files ×1

macos ×1

nginx ×1

oauth-2.0 ×1

path ×1

proxy ×1

stdclass ×1