aminchuchulu
New Member
سلام
من دارم یه اسکریپت مینویسم
حالا به جایی رسیدم که
باید هرجایی عکس بود
به جای عکس، ادرس عکس رو به یه تابع بده و اون روش یه کم پروسس انجام بده و نتیجه اون پردازش ها به جای خود عکس نمایش داده بشه
کدی که نوشتم اینه
وقتی که توی فانکشن کار خاصی انجام ندیم و مثل کدی که بالا گذاشتم صاف آرگومان ورودی روچیز کنی (return) درست کار میکنه.. یعنی انگار که متن درست که همون آدرس عکس هست به تابع فرستاده شده
اما وقتی روی آرگومانی که به تابع داده میشه یه پروسس انجام بدیم اونوقت $1 رو به عنوان آرگومان فرض میکنه نه آدرس عکس رو
برای تست کد پایین رو اجرا کنین
خب.. وقتی اینو اجرا میکنیم
این خطارو میده
و این یعنی که به جای http://php.net/images/php_snow_2008.gif مقدار $1 به تابع file_get_contents فرستاده شده 
پ.ن بیربط: تابع file_get_contents رو همینجوری از خودم در کردم.. تو هنگم الان... تابع دیگه ای به ذهنم نرسید
من دارم یه اسکریپت مینویسم
حالا به جایی رسیدم که
باید هرجایی عکس بود
به جای عکس، ادرس عکس رو به یه تابع بده و اون روش یه کم پروسس انجام بده و نتیجه اون پردازش ها به جای خود عکس نمایش داده بشه
کدی که نوشتم اینه
PHP:
<?php
$body = '<br><img src="http://php.net/images/php_snow_2008.gif" /><br>';
function img_ws($url) {
/*
کدهای مربوط به تابع
*/
return $url;
}
echo preg_replace('(<img [^<]*src=["|\']?([^ "\']*)["|\']?[^>]*>)', img_ws("$1"), $body);
?>
اما وقتی روی آرگومانی که به تابع داده میشه یه پروسس انجام بدیم اونوقت $1 رو به عنوان آرگومان فرض میکنه نه آدرس عکس رو
برای تست کد پایین رو اجرا کنین
PHP:
<?php
$body = '<br><img src="http://php.net/images/php_snow_2008.gif" /><br>';
function img_ws($url) {
$url = file_get_contents($url);
return $url;
}
echo preg_replace('(<img [^<]*src=["|\']?([^ "\']*)["|\']?[^>]*>)', img_ws("$1"), $body);
?>
این خطارو میده
کد:
Warning: file_get_contents($1) [function.file-get-contents]: failed to open stream: No such file or directory in F:\Apache2\htdocs\amin.php on line 26
پ.ن بیربط: تابع file_get_contents رو همینجوری از خودم در کردم.. تو هنگم الان... تابع دیگه ای به ذهنم نرسید