Существует несколько рабочих раундов:
def f(a):
def g (double b):
cdef np.ndarray[double, ndim=1] a_typed = a
return a_typed+b
return g(1)
Это имеет небольшую стоимость, связанную с проверкой типа при каждом вызове g
, значение которого зависит от того, сколько другой работы вы делаете в g
. def f(a):
cdef double[:] memview_of_a = a
def g(double b):
memview_of_a[0] = 0 # example of indexing operation
return a+b
return g(1)
Следует помнить, что memview_of_a
и a
просматривают одни и те же данные, поэтому вы можете получить к нему доступ двумя способами. Индексирование массивов выполняется с учетом памяти. [Info] В общем, это ограничение, но есть такие ограничения, как скалярные операции над массивами, поэтому информация о типе не имеет никакого отношения. (хотя они не очень аккуратные).
Изменить: я просто заметил, что вы пытаетесь использовать адрес gmail как значение from. Это не сработает, и интернет-провайдер прав, переписывая его. Если вы хотите перенаправить ответы на ваши исходящие сообщения, используйте reply-to
.
Обходной путь для действительных адресов, который работает со многими интернет-провайдерами:
попробуйте добавить пятый параметр к вашему mail()
:
mail($to,$subject,$message,$headers,"-f your@email.here");
Я решил это, добавив учетные записи электронной почты в Cpanel, а также добавив то же письмо в заголовок из поля, как это
$header = 'From: XXXXXXXX <test@test.org>' . "\r\n";
У меня была такая же проблема, я проверил сайт php.net. И нашел правильный формат. Это мой обновленный код.
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: ' . $fromName . ' <' . $fromEmail .'>' . " \r\n" .
'Reply-To: '. $fromEmail . "\r\n" .
'X-Mailer: PHP/' . phpversion();
\r\n должно быть в самом двойном кавычке (") , одиночные кавычки ['] не будут работать.
$fromName
также должны быть заключены в двойные кавычки. Если переменная содержит определенные символы (одинарные или двойные кавычки, например «John O'Malley», период, например «Suzy Q.» и т. Д.), Это может быть недействительным без кавычек. Правильной линией будет $headers .= 'From: "' . $fromName . '" <' . $fromEmail . '>' . "\r\n" .
– Doktor J
7 May 2018 в 13:21
Чтобы предотвратить фишинг, некоторые почтовые серверы не позволяют переписывать From.
Оказывается, сервер исходного плаката (blueHost) имеет a FAQ по этому самому вопросу .
Статья 206.
Это потому что наши серверы требуют от вас (или вашего скрипта) использовать правильно отформатированное, действительное поле From: в заголовке электронной почты. Если поле From: неверно отформатировано, пусто или адрес электронной почты не существует в cPanel, адрес From: будет изменен на username@box###.bluehost.com
.
Вы должны изменить сценарий, который используете правильно использовать допустимый From: header.
. Примеры заголовков, которые должны работать, будут:
From: user@domain.com От: "user" & lt; user @ domain .com>
blockquote>Примеры заголовков, которые НЕ будут работать:
От: "user@domain.com" От: user @ domain.com От: user@domain.com & lt; user@domain.com>
blockquote>Наши серверы не будут принимать имя для адреса электронной почты, и адрес электронной почты будет таким же. Он не будет принимать двойное объявление адреса электронной почты.
Для сценариев, таких как Joomla и Wordpress, вам нужно будет следовать их документации для правильного форматирования полей. Wordpress потребует плагин Mail From.
Примечание. Используемый вами адрес электронной почты должен быть действительной созданной учетной записью в cPanel.
blockquote>
Я понимаю, что это старый поток, но у меня была такая же проблема, так как вчера я перешел на bluehost. Возможно, это был не отобранный ответ, но я поддерживаю ответ на статью 206.
Я создал действительное письмо на панели управления и использовал его как мой адрес From, и он работал.
не работали для меня на моем общем хостинге, потому что я использовал свой адрес электронной почты hotmail в заголовке. я создал электронное письмо на моем cpanel, и я установил тот же адрес электронной почты в заголовке, да, он работал как шарм!
$header = 'From: ShopFive <site@mysite.org>' . "\r\n";
Веб-хост на самом деле не играет фол. Это не строго согласно правилам, но по сравнению с некоторыми из удивительных изобретений, предназначенных для предотвращения спама, это не особенно плохо.
Если вы действительно хотите отправить письмо с'@gmail.com «Почему бы просто не использовать службу SMTP Gmail? Если вы не можете перенастроить сервер, на котором работает PHP, тогда есть много средств для работы с электронной почтой, которые позволяют вам указать настраиваемые источники SMTP-ретрансляции phpmailer.
C.