I often find myself in the situation where I have to concatenate a string with a variable after a cmdlet. For example,
New-Item $archive_path + "logfile.txt&
You get that error because the PowerShell parser sees $archive_path, +, and "logfile.txt" as three separate parameter arguments, instead of as one string.
Enclose the string concatenation in parentheses, (), to change the order of evaluation:
New-Item ($archive_path + "logfile.txt") -Type file
Or enclose the variable in a subexpression:
New-Item "$($archive_path)logfile.txt" -Type file
You can read about argument mode parsing with Get-Help about_Parsing.