What I finally found that worked:
<?php
header("Content-type: text/plain; charset=UTF-8"

;
// taken from the comments on the llHTTPRequest wiki page
$p_data = implode('', file('php://input'));
$p_data = explode('&', $p_data);
foreach ($p_data as $p_val)
{
$d_parts = explode('=', $p_val);
$_POST[$d_parts[0]] = urldecode($d_parts[1]);
}
// to put results out to a file
$fp = fopen ( 'myOutput.txt', "w"

;
fwrite($fp, print_r($_POST, true));
fclose($fp);
// to assign values
$phpVar = $_POST["slVar"];
//dynamic values (where is $i is an integer)
$phpVarDyn = $_POST["slVar" . $i];
?>
My body in LSL was filled with key value pairs, identical to a url's query string. E.g.: key1=value1&key2=value2&key3=value3&keycount=3
Adding a keycount allowed me to loop through the keys using the 'dynamic values' syntax above.
I spent much too long putting all this information together so I hope it comes in handy for someone else.