$a = array ('x' => 2, 'y' => 3);
$b = array ( 'y' => 2, 'z' => 3);
// $c = $a * $b;
// i would like to have
// $c = array ('x' => 0, 'y' => 6, 'z' => 0);
Répondre
Si vous souhaitez multiplier des clés similaires ensemble, vous aurez besoin d'obtenir une liste des clés. array_keys semblerait être juste la fonction pour cela.
function foo($a, $b)
{
foreach(array_keys($a) as $i)
{
if(array_key_exists($i, $b){ // exists in a and b
$result[$i] = $a[$i]*$b[$i];
}else{ // exists and a but not b
$result[$i] = 0;
}
}
foreach(array_keys($b) as $i)
{
if(not array_key_exists($i, $a){ //exists in b but not i a
$result[$i] = 0;
}
}
return $result
}
Cela (je l'espère) travailler pour un jeu de clés vous main dans, non seulement x, y et z.
Vous devez utiliser une bibliothèque ou définir le produit croisé vous:
function cross_product($a, $b)
{
return array($a['y'] * $b['z'] - $a['z'] * $b['y'], ...
}
http://en.wikipedia.org/wiki/Cross_product
Après un examen plus approfondi de ce que vous faites, il semble que vous souhaitez quelque chose le long des lignes de:
function multiply_arr($a, $b)
{
return array($a['x'] * $b['x'], $a['y'] * $b['y'], $a['z'] * $b['z]);
}
à nouveau, vous devrez faire votre propre fonction, et vous devez faire une erreur de vérification en cas de la valeur est indéfinie.
3D Captcha a obtenu ce que vous recherchez. Cependant, vous devrez peut-être faire quelques vérifications d'erreur.
Vous pouvez utiliser array_map et abus bcmul à cet effet:
array_map('bcmul', $a, $b) == $a * $b
- 1. Comment multiplier les éléments de php array
- 2. PHP & JS problème d'index de tableaux numériques et assoc
- 3. Multiplier les valeurs longues?
- 4. Combiner deux tableaux avec des clés numériques sans écraser les anciennes clés
- 5. tableaux en php, Comparez les 2 tableaux et de garder les valeurs en double
- 6. Comment multiplier les valeurs de zone de texte avec javascript
- 7. Multiplier les valeurs en utilisant javascript
- 8. Count multidisque similaires clés
- 9. Fusionner deux tableaux en tant que paires de valeurs clés dans PHP
- 10. Valeurs numériques dans ComboBox
- 11. fusionner deux tableaux, tout en maintenant les touches numériques
- 12. Tableau d'objets Numpy de tableaux numériques
- 13. comment multiplier des nombres entiers de valeurs dans un tableau?
- 14. Différence de pourcentage entre différentes valeurs dans les mêmes clés de deux tableaux différents
- 15. Les valeurs du nombre de tableaux
- 16. PHP: obtention des clés des tableaux indépendants
- 17. tableaux PHP et clés - aller chercher les particuliers
- 18. Plage de valeurs numériques valides
- 19. clés du tableau PHP valeurs
- 20. Multiplier explicitement les valeurs en tant que valeurs longues
- 21. Comment valider correctement les valeurs numériques publiées dans asp.net mvc?
- 22. Concaténer des valeurs de n tableaux dans php
- 23. Comment faire pour multiplier les valeurs en utilisant SQL
- 24. Les valeurs numériques des niveaux de rapports d'erreur
- 25. comment combiner plusieurs tableaux dans un tableau associatif unique en utilisant les tableaux comme clés
- 26. Niveaux Log4Net Valeurs numériques
- 27. Expression régulière pour valider les valeurs numériques
- 28. PHP: comment supprimer (correctement) les guillemets échappés dans les tableaux lorsque les guillemets magiques sont activés
- 29. PHP, fusion des tableaux avec des clés communes
- 30. validation JavaScript pour les valeurs numériques
On dirait que vous souhaitez faire des produits ou des produits croix de points. Est-ce le cas? – zzzzBov
Je pense que oui:) – Mohammad