1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | $from['Lat'] = 51.5007359; $from['Lng'] = 3.6112547; $iRadius = 100; $istartlat = $from['Lat']; $istartlong = $from['Long']; $LatRange = ($iRadius / ((6076 / 5280) * 60)); $floatthis = ($iStartLat * 3.141592653589 / 180); $LongRange = ($iRadius / (((cos(settype($floatthis, "float")) * 6076.) / 5280.) * 60)); $LowLatitude = ($istartlat - $LatRange); $HighLatitude = ($istartlat + $LatRange); $LowLongitude = ($istartlong - $LongRange); $HighLongitude = ($istartlong + $LongRange); echo " SELECT * FROM cor WHERE cor.Lat <= $HighLatitude AND cor.Lat >= $LowLatitude AND cor.Lng >= $LowLongitude AND cor.Lng <= $HighLongitude "; ?> |
quote:Pi is often usefull in con/sin/tan functions..
There are also other Pi related constants.
These are most of them:
M_PI = 3.14159265358979323846 // pi
// The following were added in PHP 4.0.0
M_PI_2 = 1.57079632679489661923 // pi/2
M_PI_4 = 0.78539816339744830962 // pi/4
M_1_PI = 0.31830988618379067154 // 1/pi
M_2_PI = 0.63661977236758134308 // 2/pi
M_SQRTPI = 1.77245385090551602729 // sqrt(pi) (Only in PHP 4.0.2+)
M_2_SQRTPI = 1.12837916709551257390 // 2/sqrt(pi)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | function getRadiusCords($radius, $startLat, $startLong){ $radius = ($radius * 0.50); $latRange = ($radius / ((6076 / 5280) * 60)); $floatthis = ($startLat * pi() / 180); $longRange = ($radius / (((cos(settype($floatthis,"float")) * 6076.8) / 5280) * 60)); return "( cor.Lat <= ".($startLat + $latRange)." AND cor.Lat >= ".($startLat - $latRange)." AND cor.Lng >= ".($startLong - $longRange)." AND cor.Lng <= ".($startLong + $longRange)." )"; } ?> |
Korte tip: de constanten gebruiken is altijd beter als weer een extra functieaanroep (performance-wise).. Dat geldt voor wel meer dingen in PHP... __CLASS__ in plaats van get_class($this), PHP_VERSION in plaats van phpversion(), en dat soort dingenquote:Op zondag 21 juni 2009 14:23 schreef Light het volgende:
Er is ook een functie pi()
Uit het commentaar daar:
[..]
En afgezien daarvan vind ik pi() en M_PI beter leesbaar dan 3.14159265358979323846quote:Op maandag 22 juni 2009 00:32 schreef Intrepidity het volgende:
[..]
Korte tip: de constanten gebruiken is altijd beter als weer een extra functieaanroep (performance-wise).. Dat geldt voor wel meer dingen in PHP... __CLASS__ in plaats van get_class($this), PHP_VERSION in plaats van phpversion(), en dat soort dingen
Tevens goed gemaskeerde TVP
Ach, ik heb wel eens gekker gezien hoor Wat dacht je van een regel of 50 aan code om pi (bij iedere paginaoproep uiteraard) opnieuw te berekenen met een ander algoritme dat nauwkeuriger was na de 200e decimaal. In die applicatie was die precisie uiteraard helemaal niet nodig, maar de betreffende programmeur stoorde zich er nog al aanquote:Op maandag 22 juni 2009 09:01 schreef Light het volgende:
[..]
En afgezien daarvan vind ik pi() en M_PI beter leesbaar dan 3.14159265358979323846
1 |
Het werkt sowieso gewoon niet. In de eerste plaats selecteer je postcodes uit een 'vierkant', en niet binnen een cirkel. Ten tweede is de aarde een bol, en lopen de meridianen niet parallel. Wat je kunt doen is de range vrij groot houden, en dan in een postprocessing stap alle postcodes die je terugkrijgt nog even te checken door de daadwerkelijke afstand uit te rekenen. Hoe je dat doet staat hier:quote:Op zondag 21 juni 2009 14:43 schreef Likkende_Lassie het volgende:
@light, thanks,
Functie is nu als volgt geworden:
[ code verwijderd ]
Lijkt nu 100% te werken. Toch nog even goed testen
Wat ik wel erg raar vind, is dat ik de $radius moet vermenigvuldigen met 0.50 zodat ik kilometers kan gebruiken Ergens moet er dan iets fout zijn, want eigenlijk zou ik het moeten vermenigvuldigen met 0.62
Ik hoop van harte dat PHP niet zo brak is, dat dat het geval is.quote:Op maandag 22 juni 2009 00:32 schreef Intrepidity het volgende:
Korte tip: de constanten gebruiken is altijd beter als weer een extra functieaanroep (performance-wise).
Hoezo? constanten staan altijd in geheugen.. Functieaanroep betekent extra dingen op de stack, geheugenlocatie veranderen, uitvoeren van die functie, terugspringen naar vorige locatie.. Dat is in iedere taal zo.. Functieaanroepen geven nou eenmaal overhead omdat ze aanzienlijk complexer zijn dan even een variabele uit het geheugen vissen.. Je moet gewoon geen functies gebruiken voor enkele regels code en dat soort ongein.. Waarschijnlijk doet pi() niets anders dan return M_PI;quote:Op maandag 22 juni 2009 11:33 schreef Catbert het volgende:
[..]
Ik hoop van harte dat PHP niet zo brak is, dat dat het geval is.
1 2 3 4 5 6 7 8 | <td width="327"> <select name="name" type="text" class="tabel" id="name"> <option>jongen</option> <option>meisje</option> </td> </tr> |
1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <td width="47"><label for="age" class="lettertype"><?php echo JText::_('AGE'); ?></label></td> <td width="327"> <select name="age" type="text" class="tabel" id="age" size="1" maxlength="2" /> <option>10</option> <option>11</option> <option>12</option> <option>13</option> <option>14</option> <option>15</option> <option>16</option> <option>17</option> <option>18</option> <option>19</option> <option>20</option> </td> </tr> |
1 |
quote:Op maandag 22 juni 2009 13:07 schreef cablegunmaster het volgende:
ik bedoel we echoeen het in een textarea we hebben al <br> en nu willen we dat die enters veroorzaken ipv /n
is hier iets mogelijk voor?
want hij echo't plaint text.
1 2 3 4 5 6 7 8 9 10 11 12 | /** * Convert BR tags to nl * * @param string The string to convert * @return string The converted string */ function br2nl($string) { return preg_replace('/\<br(\s*)?\/?\>/i', "\n", $string); } ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |