رنگی نوشتن کدهای php

mohammad-s

Member
سلام .
تو همین فروم وقتی کد php گذاشته میشه کدها به صورت رنگی هستند !
می خوام بدونم چه طور میشه این کار رو کرد ؟
 

jhoseini

Member
یه پست پایین تر این موضوع بحث شده

--------------------------------------
ببخشید علیرضا جان، باز هم ندیدم کی پست دادی، باهم پست دادیم
 
آخرین ویرایش:

mohammad-s

Member

mohammad-s

Member
من فایل اولی رو دانلود کردم ...
میشه یه راهنمایی کنید چه کارشون باید بکنم ؟
ممنون
 

alireza82

Well-Known Member
1-pear رو نصب کنید.
2- این اکستنشن رو اینستال کنید.
3- فایل readme رو بخونید. تو این فایل این مثال رو زده برای گرفتن خروجی:
کد:
Getting output
--------------

And finally, do the highlighting and get the output:

    require_once 'Text/Highlighter.php';
    require_once 'Text/Highlighter/Renderer/Html.php';
    $options = array(
        'numbers' => HL_NUMBERS_LI,
        'tabsize' => 8,
    );
    $renderer =& new Text_Highlighter_Renderer_HTML($options);
    $hl =& Text_Highlighter::factory('php');
    $hl->setRenderer($renderer);
    $html = $hl->highlight(file_get_contents('example.php'));
بیشتر از این کمکی ازم فعلا بر نمیاد چون تا حالا از این اکستنشن استفاده نکردم. اگر نتونستید کار بکشید بگید تا نصبش کنم و یکم روش کار کنم چون برا خودمم جالبه.
اما طول میکشه
موفق باشید
 

mohammad-s

Member
جدا این خیلی پیچیدست :mrgreen:
راهی ، روشی ، کلاس خاصی برای این کار وجود نداره ؟
 

alireza82

Well-Known Member
جدا این خیلی پیچیدست
راهی ، روشی ، کلاس خاصی برای این کار وجود نداره ؟
جون داداش ما رو نترسون:razz:
عمویی اخه این خودش کلاسه دیگه ، دیگه چی میخوای:D
خوب از شوخی گذشته من خودمم این کار برام جالب شد برا همین یکم بررسیش کردم و الان بهت میگم چیکار کنی.
1-این بسته ها رو بگیر!!
Text_Highlighter-0.7.0 که این و گرفتی حتما.
Console_Getopt-1.2.3
و XML_Parser-1.2.8 اگر pear رو داری یا نصب هست که هیچ وگرنه PEAR-1.6.2 بگیر. اینا کلهم رو هم 500 کیلوبایت حجم ندارن.
خوب حالا این کدی که من برا این کار یکم تغییرش دادم.(از تو عکس میبینی دیگه که من چیکار کردم برا پکیج ها ، حالا شما هم یا همین کار رو کن یا آدرس ها رو درست کن ، نری برگردی بگی فایل و پیدا نمیکنه و ایراد داره و اینا !!!
PHP:
<html>
<head>
<style type="text/css">
.hl-default {
    color: Black;
}
.hl-code {
    color: Gray;
}
.hl-brackets {
    color: Olive;
}
.hl-comment {
    color: Orange;
}
.hl-quotes {
    color: Darkred;
}
.hl-string {
    color: Red;
}
.hl-identifier {
    color: Blue;
}
.hl-builtin {
    color: Teal;
}
.hl-reserved {
    color: Green;
}
.hl-inlinedoc {
    color: Blue;
}
.hl-var {
    color: Darkblue;
}
.hl-url {
    color: Blue;
}
.hl-special {
    color: Navy;
}
.hl-number {
    color: Maroon;
}
.hl-inlinetags {
    color: Blue;
}
.hl-main {
    background-color: White;
}
.hl-gutter {
    background-color: #999999;
    color: White
}
.hl-table {
    font-family: courier;
    font-size: 12px;
    border: solid 1px Lightgrey;
}
</style>
</head>
<body>
<?
include_once("./Console/Getopt.php");
include_once("./XML/Parser/Simple.php");
include_once("./Text/Highlighter.php");
 require_once 'Text/Highlighter/Renderer/Html.php';
    $options = array(
        'numbers' => HL_NUMBERS_LI,
        'tabsize' => 8,
    );
    $renderer =& new Text_Highlighter_Renderer_HTML($options);
    $hl =& Text_Highlighter::factory('php');
    $hl->setRenderer($renderer);
$ali="
<?php
 echo \"that's easy , dont worry\" ;
//are you ready 
echo \"now go!!\";
\$ali=mysql_query(.......);
 ?>
" ;
    $html = $hl->highlight($ali);
echo $html;


?>
</body>
</html>
اما همین و اجرا کنی ، به مقصودن برا php میرسی ولی اگر مثلا میخوای کد های HTML رو خوشمل نشون بدی باید:
PHP:
    $hl =& Text_Highlighter::factory('HTML');
از این استفاده کنی ، میبینی دیگه به جای php ای که بود گذاشتم HTML . بقیه زبون ها هم که به همین صورت.
نمونه کد خارج شده رو هم که داری میبنی.
من رشته ای که میخواستم خوشمل شه رو دادم به $ali و $ali رو دادم به
PHP:
  $html = $hl->highlight($ali
که بعدش هم مقدارش رو echo کردم به همین راحتی.
خوشم اومد چیز قشنگی بود.
موفق باشید.
 

پیوست ها

  • ali1.JPG
    ali1.JPG
    56.3 کیلوبایت · بازدیدها: 12
  • ali.JPG
    ali.JPG
    77.4 کیلوبایت · بازدیدها: 12

alireza82

Well-Known Member
راستی این $renderer =& new Text_Highlighter_Renderer_HTML($options); چیز جالبیه. renderer رو میگم. یه سر به پوشه Renderer بزن فکر کنم بفهمی به چه دردی میخوره ولی خوب اگر نزدی مهم نیست چون بدون استفاده از اون ها هم به مقصود میرسی ولی یه امکاناتی داره مثلا برای کسایی که از یه سیستمی استفاده مکنن که اون سیستمشون تگ های BB رو میشناسه و .....
البته خواستید توضیح میدم ، چون همون موقع با اونها هم کار کردم.
موفق باشید
 
آخرین ویرایش:

siavashmusic

Active Member
خیلی عالی بود علی جان
مسلما هر کاربر آماتور با توضیح سلیس شما میتونه به نتیجه برسه
 

my friend

Member
شما خودت یه نگاه به این آدرس بنداز ...
فقط یه صفحه سفید میاد !:sad:
شرمنده ، اما برای من میاد:cry:
نمیدونم مشکل از چیه؟:neutral:
بهرحال ، این لینک خودش ، این لینک دموش و این هم لینک دانلودش از سایت SourceForge

باید بگم که این کلاس ، قابلیت هایلایت کردن سینتاکس های بیش از 70 زبان برنامه نویسی رو داره:eek:
 

alireza82

Well-Known Member
ممنون دوست من!
آقا این چیزی که مای فریند معرفی کرد هم چیز قشنگیه ، زبون های بیشتری رو میشناسه و جالبه که کد هایی رو که تشخیص میده به منبع اشون لینک میده! (الته میشه ورداشت این خاصیت و دیگه محتملا!)
در کا اون پکیج پیر:
1- یه 17 تا زبون رو میشناسه (البته زبون برنامه نویسی)
2-قابلیت پارس به صورت html و BB و ... رو داره
اما اینی که مای فریند عزیز معرفی کرد:
1-76-7 تا زبون رو میشناسه( البته همه زبون نیستند مثلا DOS ، که میتونه دستورات dos رو براتون هایلایت کنه!)
2-قابلیت این رو داره که توابعی رو که میشناسه به مرجعشون لینک کنه که خوب جالبه
3-فقط پارس HTML برمیگردونه تا اونجایی که من دیدم
4- تو تشخیص خیلی بهتر و جالب تره و کامل تر از Text_Highlighter-0.7.0
در کل چیز جالبیه ، از نظر سادگی استفاده هم مزیت چندانی نصبت به هم ندارن به جز اینکه اونی که مای فریند گفت نیازی به بسته جانبی و .. نداره و یه چیز کاملا جداست. و استفادش یکم راحت تر هست
در کل جفتشون خوبن ، و قشنگ.
اینم یه جمع بندی که تاپیک به یه نتجه ای رسیده باشه.
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا