Ben bir url oluşturmak için çalışıyorum ama çalıştığını bile garip bir uyarı alıyorum. Ben bir api xml sayfa yapıyorum ve ben denetleyicisi aşağıdaki çağrıyı kullanın:
public function executeList(sfWebRequest $request)
{
$this->users = array();
foreach($this->getRoute()->getObjects() as $user)
{
$this->users[$this->generateUrl('user_show', $user, true)] = $user->asArray($request->getHost());
}
}
Aşağıdaki gibi user_show yol şu şekildedir:
# api urls
user_show:
url: /user/:nickname
param: { module: user, action: show }
Ve xml çıkışları aşağıdaki gibidir:
<br />
<b>Warning</b>: array_diff_key() [<a href='function.array-diff-key'>function.array-diff-key</a>]: Argument #1 is not an array in <b>/opt/local/lib/php/symfony/routing/sfRoute.class.php</b> on line <b>253</b><br />
<br />
<b>Warning</b>: array_diff_key() [<a href='function.array-diff-key'>function.array-diff-key</a>]: Argument #1 is not an array in <b>/opt/local/lib/php/symfony/routing/sfRoute.class.php</b> on line <b>253</b><br />
<br />
<b>Warning</b>: array_diff_key() [<a href='function.array-diff-key'>function.array-diff-key</a>]: Argument #1 is not an array in <b>/opt/local/lib/php/symfony/routing/sfRoute.class.php</b> on line <b>253</b><br />
<?xml version="1.0" encoding="utf-8"?>
<users>
<user url="http://krowdd.dev/frontend_dev.php/user/danny">
<name>Danny tz</name>
<nickname>danny</nickname>
<email>comedy9@gmail.com</email>
<image></image>
</user>
<user url="http://krowdd.dev/frontend_dev.php/user/adrian">
<name>Adrian Sooian</name>
<nickname>adrian</nickname>
</user>
</users>
Bu yüzden doğru xml çıktılar ama generateurl yöntemini çağırırken uyarı thows atıyor neden bilmiyorum.
Teşekkürler!