J'ai un $ delete path et un $ user_id incluent respectivement '#' et '@' dans la chaîne. Comment puis-je remplacer chacun avec la valeur codée% 23 et 40 $.Comment encoder seulement 2 caractères dans le chemin?
Je fatigué en utilisant str_replace mais n'a pas eu de chance: str_replace($string, array('@', '#'), array('%40', '%23'));
Mon chemin complet Supprimer ressemble à ceci:
$delete = "http://admin:[email protected]/@api/deki/DELETE:users/$user_id/properties/%s";
Je me sens comme le $ user_id devrait être assez simple. Pour les propriétés, il doit traverser pour obtenir toutes les propriétés disponibles. Vous pouvez voir ci-dessous la boucle:
foreach($xml->property as $property) {
$name = $property['name']; // the name is stored in the attribute
curl_fetch(sprintf($delete, $name),'admin','12345');
}
Chaque propriété contient un « # », donc est-il possible que chaque itération qui modifient « # » pour être la valeur appropriée?
Merci d'avance.
@Gumbo Je viens d'essayer ce directement après l'attribution du user_id $, et après la str_replace je l'a imprimé. Pour une raison quelconque, il me donne toujours l'user_id sans le% 40 comme il se doit. Des idées? – Aaron
@Aaron: Avez-vous réaffecté la valeur modifiée à la variable? – Gumbo
@Gumbo Ah, je pense que c'est mon problème. Est-ce que cela signifie que je dois faire $ user_id = str_replace (...)? – Aaron