我正在关注这个例子http://cubiq.org/create-fixed-size-thumbnails-with-imagemagick,这正是我想对图像做的事情,除了背景剩余部分(即白色边框) ).有没有办法做到这一点,并可能裁剪白色背景?还有另一种方法吗?重新调整大小需要成比例,因此我不仅要设置宽度重新调整大小限制或高度限制,而是按比例重新调整图像大小.
对于那些愿意使用Zend_OAuth_Consumer解决方案的人,我强烈建议,因为它处理处理OAuth请求所需的所有简单步骤,以及响应后面的所有困难程序,这是我的工作代码:
$consumer = new Zend_Oauth_Consumer(array(
'callbackUrl' => FLICKR_REDIRECT_URL /* from my app settings */,
'siteUrl' => 'http://www.flickr.com/services/oauth',
'consumerKey' => FLICKR_API_KEY,
'consumerSecret' => FLICKR_API_SECRET,
'requestTokenUrl' => FLICKR_REQUEST_TOKEN_URL /* www.flickr.com/services/oauth/request_token */,
'accessTokenUrl' => FLICKR_ACCESS_TOKEN_URL /* www.flickr.com/services/oauth/access_token */,
'authorizeUrl' => FLICKR_AUTHORIZE_URL /* www.flickr.com/services/oauth/authorize */
));
Run Code Online (Sandbox Code Playgroud)
2)获取请求令牌并将其存储在$ _SESSION变量中(或使用您想要的任何其他存储机制).确保将返回对象序列化为会话变量的字符串:
$token = $consumer->getRequestToken();
$_SESSION['FLICKR_REQUEST_TOKEN'] = serialize($token);
Run Code Online (Sandbox Code Playgroud)
3)我在设置权限时遇到问题,使用消费者实例的方法重定向,并设置此时的权限(即"读取","写入","删除"等等):
$consumer->redirect(array("perms" => FLICKR_API_PERMS /* 'read', 'write', 'delete', etc... */));
Run Code Online (Sandbox Code Playgroud)
4)在您重定向到的页面上(即FLICKR_REDIRECT_URL),创建一个新的使用者实例,现在获取访问令牌,将其存储在$ _SESSION中,然后取消设置会话请求令牌变量:
$consumer = new Zend_Oauth_Consumer(array(
'callbackUrl' => FLICKR_REDIRECT_URL /* from my app settings */,
'siteUrl' => 'http://www.flickr.com/services/oauth',
'consumerKey' …
Run Code Online (Sandbox Code Playgroud) 是否有相当于从正常类中获取重组的标准化对象?与PHP的__toString()覆盖方法相同的行.
好的,所以我有这个抓取一堆工作站的方法,并返回一个对象模型,它处理一堆其他方法来获取其他相关数据.所以在这种情况下,当我调用包含位置"$ locations"的对象时,我想要返回一个对象属性的平面关联数组,或者我可以轻松编码为JSON的对象数组.如果我得到一个位置对象数组,我只想将$ location直接转换为JSON字符串.就像我将$ location引用为包含__toString()的位置对象一样,它会自动生成一个字符串表示.在这种情况下,我想要一个标准的对象或数组,而不是一个字符串.有没有办法做到这一点?
代码示例如下:
public function stnSearch() {
$locations = DBO::getInstance()->query("
SELECT " . DBO_Location::COLUMNS . "
FROM " . DBO_Location::TABLE_NAME . " AS a
WHERE a.title LIKE '%" . $_REQUEST['query'] . "%'
")->fetchAll(PDO::FETCH_CLASS, DBO_Location::MODEL);
Util::debug($locations); // want this to produce a standard object for each model without having to do an additional loop
exit();
}
Run Code Online (Sandbox Code Playgroud)